2013-05-17 14 views
27

Per esempio, per le costanti, è vero:Convenzioni di denominazione ruby?

THIS_CONSTANT

This_Constant

ThisConstant

O qualcos'altro ...?

In effetti, esiste una sorta di (quasi |) riferimento ufficiale per l'intera materia?

Mi piacerebbe anche essere in grado di rapidamente due domande di controllo come:

  • Quali modelli di denominazione vengono applicate da Ruby stessa (? Per esempio, Constant s deve iniziare con un capitale, a destra) e quali sono semplicemente convenzioni (method_name s dovrebbe essere in caso di serpente, giusto?)?

  • Esistono convenzioni su come scrivere un promemoria di quale classe si suppone che una variabile sia nel suo nome? ("Notazione ungherese" o qualsiasi altra cosa ... Voglio dire, ho avuto l'impressione che se tu sentissi mai la necessità di usarlo in codice Ruby, lo stai facendo male, ma a prescindere, è una convenzione?)

e così via ...

+0

notazione ungherese non è usato in Ruby. In parte perché provare a descrivere il tipo di una variabile nel suo nome si traduce in nomi complessi che spesso mancano di una buona descrizione di ciò che realmente sono e, poiché in Ruby dovremmo usare la digitazione anatra, il che significa che il tipo di variabile è spesso meno importante di quello che può comportarsi. Se può convertirsi o essere convertito facilmente, che differenza ha importanza di che tipo è. La notazione ungherese è più importante quando è difficile convertire da un tipo all'altro. –

+0

Fai un favore a te e alla tua squadra e installa 'Rubocop' in tutti i tuoi progetti. Nessuno dovrebbe perdere tempo a parlare di convenzioni. – Daniel

risposta

56

The Ruby Style Guide è uno sforzo pubblico a raccomandare convenzioni coerenti e best practice per sviluppatori Ruby. Si dovrebbe controllare.

+6

Grazie, vedo la sezione ["Denominazione"] (https://github.com/bbatsov/ruby-style-guide#naming). Hm, "Usa' SCREAMING_SNAKE_CASE' per altre costanti. " ... Hell yes, 'SCREAMING_SNAKE_CASE' ftw. –

+1

L'editor stava cercando di aggiungere informazioni rilevanti dal link. Ora è di nuovo una risposta solo per collegamento. – Jamal

+0

L'ho reso meno link-only. Aggiungere troppo verbosità violerebbe lo stile Ruby :) –

0

L'evidenziazione della sintassi nel tuo editor di testo può darti dei buoni indizi mentre stai imparando una lingua e provi a sviluppare un istinto per le sue convenzioni, applicate e non. Io uso l'editor Gedit di Linux.

Ieri sono rimasto piacevolmente sorpreso di scoprire che alcune delle convenzioni per commentare raccomandato dalla guida Rubino Stile https://github.com/bbatsov/ruby-style-guide, come # TODO e # FIXME, presentarsi faccia in grassetto giallo brillante. I nomi costanti con ALL CAPS sono in grassetto ciano. Ovviamente, diversi editor usano differenti combinazioni di colori.

0

In breve

Il caso di cammello per le classi e moduli definizione usiamo CamelCase

Il caso serpente per i file, variabili e metodi: snake_case

+1

di solito vedo che si chiama "TitleCase" per differenziarlo da 'camelCase' – iameli