Friday, July 15, 2011

.NET e Nomeclatura: Classi, metodi e proprietà (Resharper mi aiuta)

Visti i continui cambi di metodologia applicata da vari clienti nella nomeclatura di classi, metodi e proprità vorrei fare un piccolo sunto basandomi, non sullo stato odierno dei miei ormoni, ma sul seguente articolo msdn: http://msdn.microsoft.com/en-us/library/xzf533w0(v=VS.71).aspx
La nomeclatura “corretta” e “non corretta” non è un argomento che nasce oggi ma è vecchio come è vecchia la CPU e varia (a volte di poco a volte di molto) a seconda del linguaggio.
Per comodità io mi baserò su C# e lo farò in maniera mooolto pragmatica (per approfondimenti riferitevi al link di cui sopra).
Partiamo da una regola generale: Classi, Metodi, Proprietà etc dovrebbero essere Pascal case
Classi
Nomi validi:
  • public class FileStream
  • public class Button
  • public class String
Nomi Invalidi:
  • public class CFileStream –> no prefix character
  • public class _Button –> come sopra
  • public class IString –> I viene usata per le interfacce
  • public class FS –> I nomi delle classi devono essere autoesplicativi

Metodi
Validi:
  • RemoveAll()
  • GetCharArray()
  • Invoke()
Non validi:
  • removeAll() –> non è pascal case
  • getchararray() –> neanche questo
  • _invoke() –> ha un carattere prima del nome reale del metodo
  • minvoke() –> come sopra

Proprietà
Validi:
  • public Color Color { get; set; }
  • public Color BackColor { get; set; }
Non valido:
  • public Int32 Color { get; set; }
  • public Color backColor { get; set; }

un discorso a parte dovrebbe essere fatto per i parametri ma, sempre in quel benedetto link, troverete tutto.
Se trovate tutto ciò scomodo o troppo complesso da ricordare, o qualcuno nel vostro team non vuole adattarsi perchè pensa d’avere la Scienza Infusa,
bene siate propositivi e comprate ReSharper.
Grazie a tutti coloro che vorranno standardizzarsi A bocca aperta

No comments:

Post a Comment