Quali regole di naming usate?

Martedì 17 Giugno 2008 - 12:48

di Cesare Lamanna

Scripting

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 ;-)

Tags:

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.

# - postato da andr3a - 17 Giugno 2008 - 13:27

5

se posso calmelCase solo Inglese, ma spesso lo mischio con l’italiano per comodità.. ancheio uso la forma con la prima lettera minusola

# - postato da Paul - 17 Giugno 2008 - 14:14

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 :)

# - postato da ZofM - 17 Giugno 2008 - 15:48

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 :D

infine 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 uso

per 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 :)

# - postato da Activ - 17 Giugno 2008 - 23:10

13

e nei CSS cosa usate? che criterio di naming usate per creare il layout (almeno la gabbia)

# - postato da Hedo - 18 Giugno 2008 - 09:41

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

Inserisci il tuo commento:





(puoi usare i seguenti tag HTML per formattare il testo -
a href, b, i, br/, p, strong, em, ul, ol, li, blockquote, pre):

 

Anteprima del commento