Apri Mike prefissi

Per sottolineare, o non sottolineare? Questo è Open Mike, una serie di post di discussione per gettare il gatto tra i piccioni. Questi post riguardano tutto te - vogliamo ascoltare le tue opinioni, idee e pensieri. A causa della grande richiesta, questo Open Mike include un sondaggio per aiutarci ad analizzare l'opinione, quindi sentiamo cosa avete da dire prefissi.


Metti i caratteri di sottolineatura prima delle variabili?

Gli sviluppatori AS3 utilizzano spesso trattini di sottolineatura come prefissi per variabili private o protette in una classe:

 private var _playerID: String;

Alcuni programmatori trovano questo un modo utile per dire a colpo d'occhio se la var è disponibile per altre classi; altri lo deridono come inutili e brutti. Da che parte stai?



Come su argomenti di metodo e interfacce? Cos'altro?

Altri prefissi comuni sono a_ per gli argomenti del metodo (o p_ per i parametri) e I per le interfacce.

 public function takeDamage (a_damage: Number): void _damage- = a_damage; 
 package interfaccia pubblica IPlayerCharacter function takeDamage (a_damage: Number): void; 

Il prefisso "I for interface" è piuttosto comune, ma i prefissi degli argomenti sono più rari.



Qualcun altro che usi spesso? Fateci sapere nei commenti.


Notazione ungherese: Yea o Nay?

Se quelli non hanno suscitato opinioni forti, ho due parole per te: notazione ungherese.

No, non sto parlando di Systems Hungarian, dove il tipo di dati dell'oggetto è codificato in un prefisso del nome:

 var intCounter: int = 0; var boolBestScore: Boolean = false; var nHeight: Number = 120; var btnOK: SimpleButton = new Button ();

Nessuno lo sta ancora usando, vero? Con un IDE decente puoi facilmente individuare il tipo di dati di qualsiasi variabile; c'è poco bisogno di avere quell'informazione nel nome della variabile.

Sto parlando di Apps ungherese, dove il scopo dell'oggetto è codificato in un prefisso del nome:

 var dHeight: Number = newHeight - oldHeight; // d per 'difference' var cChildren: int; // c per 'count' var degAngle: Number; // deg for 'degrees' var radAngle: Number; // rad per 'radianti'

(Leggi l'eccellente articolo di Joel Spolsky Rendi il codice sbagliato Sbaglia per maggiori informazioni su questo.)

Usi qualsiasi forma di notazione ungherese, o è completamente inutile in un linguaggio OOP come AS3?