Quali regole di naming usate?
Martedì 17 Giugno 2008 - 12:48
di Cesare Lamanna

Al tema abbiamo accennato qualche altra volta (mi limito a ricordare questo intervento di Gianni Malanga relativo al mondo Microsoft). Ora lo poniamo in forma di sondaggio e discussione aperta.
Quali naming conventions usate quando programmate? Mixate italiano e inglese (getArticolo), solo inglese (getItem) o solo italiano (dammiArticolo)? Quali altre convenzioni, magari dettate solo dalla vostra esperienza, usate?
Grazie a Roberto per lo spunto ;-)
Categoria: Scripting | Permalink
Commenti
1
Assolutamente camelCase in inglese
:D# - postato da Gunn - 17 Giugno 2008 - 13:08
2
In Javascript uso anche io camelCase inglese.
In PHP uso get_item() per i metodi e ClassName per gli oggetti.
In alcuni casi le classi sono in italiano e quindi mi trovo un mix del tipo $ClasseConNomeItaliano->get_item();:)
# - postato da simplemaL - 17 Giugno 2008 - 13:13
3
se possibile, preferisco usare underscore, lowercase, solo inglese; per i css lowercase e trattini
# - postato da NoWhereMan - 17 Giugno 2008 - 13:20
4
camelCase inglese sempre, qualunque linguaggio sia.
A differenza di M$ pero’, preferisco la prima lettera in lowercase per i metodi.
giveMe, invece di GiveMe
Prima in capital, solo per nomi classi e/o costrucctori, le funzioni per i linguaggi che lo permettono, sempre prima lettera in lowercase.
Per concludere, secondo me lo scopo e’ non avere ambiguita’ e capire immediatamente cosa possa essere quel nome: una funzione/metodo o una classe?
Restano le variabili, dove l’underscore e’, secondo me, la soluzione in quei linguaggi che non usano caratteri speciali per distinguerle o che non permettono l’uso di “$” davanti al nome della variabile.
5
se posso calmelCase solo Inglese, ma spesso lo mischio con l’italiano per comodità.. ancheio uso la forma con la prima lettera minusola
6
camelCase inglese.
Ho iniziato con cakephp che me lo imponeva, ma poi lo ho trovato perfetto anche per tutto il resto, crea ordine, semplicità e “compatibilità” in ogni linguaggio.
# - postato da Slam - 17 Giugno 2008 - 14:42
7
Per i metodi di classe uso tipo get_post(), sempre lowercase e sempre in inglese (anche perche’ lavoro in irlanda e difficilmente capirebbero i nomi in italiano) :-)
In uppercase con doppio underscore davanti ed alla fine solo per le costanti# - postato da Alessio Michelini - 17 Giugno 2008 - 14:44
8
e’ un gran casino :o(
userei solo inglese, se non ci fossero parole di cui dimenticherei subito la traduzione :o/per questo mixo. e uso il camelCase.
# - postato da Roberto - 17 Giugno 2008 - 15:44
9
camel anche per me … ma da un pò di tempo mi sento più patriottico e quindi solo nomi italiani… :)
Sinceramente non so il motivo, ma ultimamente mi ritrovavo a scrivere un mix tra eng/ita e forse era ora di “passare” al solo italiano.
Non mi trovo affatto male, sapete? Sicuramente mi rende un pò più originale, visto che la maggior parte usa solo eng.byz :)
10
con underscore non si può vedere, soprattutto se mixato al camelcase
cosa darei per vedere php con gli alias camelcase# - postato da Gunn - 17 Giugno 2008 - 19:32
11
chiedo scusa per il doppio reply, d’accordissimo con andrea sulla prima lettera, uppercase per i costruttori, lowercase per i metodi/campi
inoltre dimenticavo ho sviluppato con il tempo l’abitudine (non lo faccio sempre a dire il vero, oppure lo faccio in un refactoring) a dare nomi particolari alle variabili
$argString, $argNumber
tutti gli argomenti delle function/methods hanno il prefisso $arg$this i campi/metodi della classe (this lo uso anche in java, anche se non è obbligatorio, è utile poter distinguere alla prima occhiata)
$supCounter le cosiddette “variabili di appoggio” (es. un counter) hanno come prefisso $sup (support variables) for($supC=0;$supC<100;$supC )
cossicchè possa individuarle subito per cancellarle al volo con unset($supC)
questo non lo faccio a livello maniacale, ma solo con contenuti veramente pesanti :Dinfine le variabili function scope non hanno prefisso ma cerco sempre di dare nomi sensati e facili da ricordare
tempo fa mi interessai al naming ma non trovai nulla riguardo alle variabili nell’oop, distinguere le variabili al volo è “cosa veramente buona”… cosa ne pensate? ne approfitto per chiedere se è corretta la traduzione di “variabili di appoggio”, che ho interpretato in “support variable”… o “service variable”?
tornando al naming dei metodi
cerco sempre di adattare la procedura ad un nome facile da ricordare (e non il contrario) proprio perchè nomi troppo difficili non riesco a ricordarli, solitamente usoper i pubblici:
getSomething()
setSomething()per i privati:
buildSomething()per finire, i miei field sono sempre privati, mi appoggio sempre a dei metodi getter/setter
:D ciao
# - postato da Gunn - 17 Giugno 2008 - 20:01
12
miscelo opportunamente inglese e italiano a seconda del caso :)
13
e nei CSS cosa usate? che criterio di naming usate per creare il layout (almeno la gabbia)
14
> e nei CSS cosa usate?
i nomi dei selettori in minuscolo, con il segno ‘meno’ come separatore delle parole (colonna-sx)
da un po’ (cosa che fara’ rabbrividire i puristi) ho preso a scrivere tutta la dichiarazione su una riga, che mi resta ugualmente leggibile ma il css e’ molto compatto. e comunque indento i selettori per contenitore per capire come sono posizionati nel codice.
per il layout in genere ho:
wrapper{} (non sempre) container{} header{} main{} (non sempre)) colonna-sx{} (a scelta :o) content{} colonna-dx{} footer{}# - postato da Roberto - 18 Giugno 2008 - 12:56
15
io per i css uso l’inglese per i siti multilingua e l’italiano per quelli in lingua italiana. l’importante è dare nomi alle classi che siano rispettosi della semantica del sito, faccio un esempio: il nome #colonna-sx potrebbe essere convertito nel più sensato (nel caso io abbia un menu secondario nella colonna) #sub-navigazione
# - postato da Laura De Masi - 18 Giugno 2008 - 15:04







