Ho dato un'occhiata a Ruby Shoes per lo sviluppo di GUI con Ruby. Finora, è stata una buona esperienza per creare semplici app. Tuttavia, sono abbastanza preoccupato di essere in grado di scrivere applicazioni su larga scala con esso. Ad esempio, come utilizzerei il pattern MVP con questo framework?
Per ora, non sono stato in grado di far trapelare dubbi sulla presentazione nella vista a causa della mancanza di una sorta di "associazione dati". Ho un codice che assomiglia a questo:
Shoes.app do
@view = SampleView.new
@presenter = SamplePresenter.new @view
@label = para @view.sample_property
button "Update sample_property" do
@presenter.update_sample_property
end
end
Qui, la chiamata a @presenter.update_sample_property
aggiorna @view.sample_property
ma l'etichetta non viene aggiornata di conseguenza.
Perché funzioni, dovrei rendere @presenter.update_sample_property
per restituire una stringa, quindi chiamare @label.text = return_value
, ma penso che violerebbe il principio MVP di non avere la logica di presentazione nella vista.
Sono abituato a lavorare su .Net con il pattern MVP quindi non so se il pattern si applica correttamente a Shoes come ho cercato di fare.
Ci sono risorse disponibili per realizzare app non banali con Shoes? Soprattutto usando il pattern MVP o qualcosa di simile?
EDIT: ho dato un'occhiata a la scatola da scarpe per vedere quali altre persone hanno raggiunto con il framework. Anche se non l'ho esaminato a lungo, a prima vista sembra che siano tutti progetti semplici senza scopi reali.
AGGIORNAMENTO: finalmente sono riuscito a trovare qualcosa che mi soddisfi. Oh, a proposito, mi sono spostato su green_shoes perché è tutto scritto in ruby e posso eseguirlo dalla riga di comando piuttosto che dall'applicazione Shoes. L'imballaggio non è ancora un problema per me.