- Package: impotante utilizzare le convenzioni per evitare conflitti sui nomi, soprattutto nel caso di utilizzo di package importati da terze fonti.
- I nomi dei package vanno scritti tutti in minuscolo.
- Se si appartiene/lavora per una compagnia che ha un dominio internet, lo si usa all'inizio del nome del package, prima il "suffisso" del nome a dominio (il dominio di primo livello) poi il dominio effettivo della compagnia (il dominio di secondo livello). Nel casa dei package della Sun si ha "com.sun".
- Se il nome a dominio contiene caratteri speciali non usabili nel nome del package, bisogna convertirli in underscore (per esempio se il nome a dominio è una keyword o se il nome inizia con un numero.
- Se si vuole indicare un sottodominio, lo si può fare, sempre con la logica di scrivere il nome a dominio in maniera inversa, cioè primolivello.secondolivello.sottodominio
- Si può specificare anche il nome dle progetto o della persona che ha sviluppato il package, sempre con la logica di inserirlo in fondo al nome del package.
- Esempi validi sono, per esempio
com.java
com.apple.quicktime.v2
- I nomi dei package vanno scritti tutti in minuscolo.
- Classi e interfacce: Anche in questo caso è buona norma rispettare le seguenti convenzioni
- i nomi dovrebbero rappresentare sostantivi o frasi descrittive non eccessivamente lunghe
- La prima lettera deve essere maiuscola, le altre minuscolo.
- Se il nome è composto da più parole, vanno scritte attaccate, con la prima lettera di ognuna in maiuscolo
- Il nome dovrebbe essere descrittivo della classe, avere un senso, una connessione al significato semantico della classe stessa
- Sono da evitare i verbi, riservati ai metodi
- Esempi di nomi corretti per classi ed interfacce sono:
ClassLoader
SecurityManagerThread
Dictionary
- Metodi: utile anche in questo caso rispettare le convenzioni
- il nome di un metodo dovrebbe essere costituito da un vervo che spieghi l'azione del metodo stesso, scritto in minuscolo.
- Se si vuole usare più di una parola, contenenti comunque in verbo, la prima parola deve essere minuscola e le altre avere la prima lettera maiuscola.
- Metodi che leggono e settano una variabile, dovrebbero indicare come prima parola, rispettivamente, get e set, seguita dal nome di variabile interessata
- Metodi che servono per ricavare la lunghezza di un oggetto dovrebbero chiamarsi lenght
- Metodi che verificano una variabile booleana dovrebbero chiamarsi is seguita dal nome di variabile da verificare
- Nomi corretti di metodi sono
get
Vset
Vis
V
toV
sommaCostanti
- Fields (non so bene cosa siano)
- Names of fields that are not
final
should be in mixed case with a lowercase first letter and the first letters of subsequent words capitalized. - Note that well-designed classes have very few
public
orprotected
fields, except for fields that are constants (final
static
fields). - Fields should have names that are nouns, noun phrases, or abbreviations for nouns.
- Names of fields that are not
- Costanti:
- Le costanti dovrebbero essere rappresentate da parole o frasi descrittive e/o abbreviazioni, scritte in maiuscolo, divise, se più parola, da un underscore.
- Corretti nomi di costanti sono:
MIN_VALUE
MAX_VALUE
PS_RUNNING
S_SUSPENDED
- Varibili locali e Parametri
- Dovrebbero essere costituite da parole corte, o assemblamenti di lettere, sempre in minuscole, che non necessariamente formano una parola di senso compiuto
- per esempio una variabile che contiene un riferimento all'oggetto ColoredPoint potrebbe chiamarsi cp
- oppure buf potrebbe essere un buon nome per un puntatore ad un buffer
- si dovrebbero evitare variabili di uan sola lettera, escludendo i cicli dove si possono usare (come la classica i) oppure se indicano un type, per esempio per convenzione si usa
giovedì 7 febbraio 2008
Convenzioni sui nomi in Java
Dal sito di Java (http://java.sun.com/docs/books/jls/second_edition/html/names.doc.html) presento qui le convenzioni per la rappresentazioni dei nomi in un progetto Java.
Iscriviti a:
Commenti sul post (Atom)
Nessun commento:
Posta un commento