Forum: Italian Ruby user group Layout dei progetti ruby

Posted by Emanuele DelBono (Guest)
on 2012-09-25 17:48
(Received via mailing list)
Buongiorno a tutti
Esistono delle linee guida da seguire per impostare un progetto ruby
(in particolare sinatra)?
Quello che intendo ci sono convenzioni che invitano a mettere il
codice in una certa cartella (ad esempio java usa la convenzione
com.nomeazienda.....)?

grazie.
Posted by Andrea Pavoni (apeacox)
on 2012-09-25 18:06
(Received via mailing list)
non so se esistono convenzioni precise, di norma cerco di seguire un po' 
di buon senso e guardo come sono organizzati gli altri progetti (es: la 
struttura di default per rails)

puoi seguire una struttura tipo questa:

* config/ # => tutti i config ed il codice per inizializzare l'app

* views/* # => c' poco da spiegare :P

* lib/ # => per i componenti aggiuntivi

* app/ # => se proprio non sai dove mettere il codice relativo all'app 
(es: models e moduli con le azioni di sinatra

* spec/test # => il solito :P

* Gemfile, config.ru, etc # => tutto quello che occorre per 
pacchettizzarla e/o farla partire con rack


sono comunque curioso di sapere altri pareri ;)

A.


Il giorno 25/set/2012, alle ore 17:47, Emanuele DelBono 
<emanuele.delbono@gmail.com> ha scritto:
Posted by Andrea Dallera (edwin_bolthar)
on 2012-09-25 18:49
(Received via mailing list)
Ciao Ema,

  no, niente come i progetti di VS in C# se  quello che stai 
cercando.Per sinatra ho visto usare le stesse cartelle di rails (cio 
app/models, app/views), tutto in root (models/ , views/) ma c' in giro 
davvero un po' di tutto (https://github.com/sr/git-wiki per esempio ha 
tutto in un unico file).

HTHAndrea

--

http://usingimho.wordpress.com
http://github.com/bolthar
Da: ml-bounces@lists.ruby-it.org
A: "ruby-it" ml@lists.ruby-it.org
Cc:
Data: Tue, 25 Sep 2012 17:47:56 +0200
Oggetto: [ruby-it] Layout dei progetti ruby
Posted by gabriele renzi (Guest)
on 2012-09-25 19:38
(Received via mailing list)
2012/9/25 Andrea Pavoni <apeacox@gmail.com>:
> * app/ # => se proprio non sai dove mettere il codice relativo all'app (es: 
models e moduli con le azioni di sinatra
>
> * spec/test # => il solito :P
>
> * Gemfile, config.ru, etc… # => tutto quello che occorre per pacchettizzarla e/o 
farla partire con rack
>
>
> sono comunque curioso di sapere altri pareri ;)



personalmente:

views/
tests/
models.rb
controllers.rb
config.rb

finché  un'app piccina i single file sono più comodi :)

--
twitter: @riffraff
blog (en, it): www.riffraff.info riffraff.blogsome.com
work: circleme.com
Posted by Emanuele DelBono (Guest)
on 2012-09-25 22:03
(Received via mailing list)
Ciao Andrea (che fine hai fatto?).

Grazie a tutti, diciamo che si usa il buon senso.:-)

In molti casi ho visto usare una cartella lib per il codice e una test
per i test. Ma non mi torna perch lib...forse perch era una gemma?

2012/9/25 Andrea Dallera <andrea@andreadallera.com>:
Posted by Luca P. (luca_p)
on 2012-09-25 22:39
(Received via mailing list)
Personalmente le convenzioni di Rails per me funzionano, non condivido 
invece i file con pi classi.
Le rare volte che ci ho provato si sono rivelate pi lavoro dei file 
singoli!

Inviato da iPhone

Il giorno 25/set/2012, alle ore 22:03, Emanuele DelBono 
<emanuele.delbono@gmail.com> ha scritto:
Posted by gabriele renzi (Guest)
on 2012-09-26 08:21
(Received via mailing list)
2012/9/25 Luca Pradovera <luca.pradovera@gmail.com>:
>>
>> In molti casi ho visto usare una cartella lib per il codice e una test
>> per i test. Ma non mi torna perch lib...forse perch era una gemma?


non solo gem esterne,  che certa roba non  necessariamente
controller o model, e quindi la metti altrove.

Che ne so, magari hai un set di estensioni delle classi base (tipo
String#title_case?) o qualche classe che non  strettamente parte del
modello o del controller anche se la usi in uno dei due (es: un
SortedSet probabilmente non  una cosa specifica del tuo dominio come
potrebbe essere User), o semplicemente una mini libreria che ti porti
dietro che non   specifica del progetto (tipo un
SyntaxHighlightingMarkdownProcessor).

Anche se alla fine si pu dire che  _sempre_ parte del "model".
Non penso che la polizia del buon codice ti verr dietro se metti
qualcosa in model/ che potresti mettere in lib/ :)



--
twitter: @riffraff
blog (en, it): www.riffraff.info riffraff.blogsome.com
work: circleme.com
Posted by Msan Msan (msan)
on 2012-09-26 20:02
(Received via mailing list)
2012/9/25 Emanuele DelBono <emanuele.delbono@gmail.com>:
> Buongiorno a tutti
> Esistono delle linee guida da seguire per impostare un progetto ruby
> (in particolare sinatra)?
> Quello che intendo ci sono convenzioni che invitano a mettere il
> codice in una certa cartella (ad esempio java usa la convenzione
> com.nomeazienda.....)?

Io ho sempre usato le convenzioni di default di rails, non ho mai
cambiato nulla se non aggiungere una directory "application" sotto
views per i partials condivisi.
In rails non esistono i package come per java, questo potrebbe essere
un pro o un contro, io uso anche grails e quando le classi diventano
tante e' comodo organizzarle in packages.
Posted by gabriele renzi (Guest)
on 2012-09-26 20:16
(Received via mailing list)
2012/9/26 Mauro <mrsanna1@gmail.com>:
> views per i partials condivisi.
> In rails non esistono i package come per java, questo potrebbe essere
> un pro o un contro, io uso anche grails e quando le classi diventano
> tante e' comodo organizzarle in packages.



dipendentemente da quel che apprezzi nei package di java, possono
andare bene i moduli di ruby, o annidamento dentro una classe, rails
li gestisce ragionevolmente bene (e.g. usare modelli User,
User::Setting, User::Credentials )


--
twitter: @riffraff
blog (en, it): www.riffraff.info riffraff.blogsome.com
work: circleme.com
Please log in before posting. Registration is free and takes only a minute.
Existing account (Switch to SSL-encrypted connection)
NEW: Do you have a Google/GoogleMail or Yahoo account? No registration required!
Log in with Google account | Log in with Yahoo account
No account? Register here.