Å understreke, eller ikke å understreke? Dette er Open Mike, en rekke diskusjonsposter for å kaste katten blant duene. Disse innleggene handler om deg - vi vil høre dine meninger, ideer og tanker. På grunn av den populære etterspørselen inneholder denne Open Mike en meningsmåling som hjelper oss med å analysere mening, så la oss høre hva du må si om prefikser.
AS3-utviklere bruker ofte understreker som prefiks for private eller beskyttede variabler i en klasse:
privat var _playerID: String;
Noen kodere finner dette en nyttig måte å fortelle om et blikk er om varen er tilgjengelig for andre klasser; andre nekte det som ubrukelig og stygg. Hvilken side er du på?
Andre vanlige prefikser er a_ for metodeargumenter (eller p_ for parametere), og jeg for grensesnitt.
offentlig funksjon takeDamage (a_damage: Number): void _damage- = a_damage;
pakke offentlig grensesnitt IPlayerCharacter funksjon takeDamage (a_damage: Number): void;
Prefixet "Jeg for grensesnitt" er ganske vanlig, men argumentets prefikser er sjeldnere.
Noen andre du bruker ofte? Gi oss beskjed i kommentarene.
Hvis de ikke brakte sterke meninger, har jeg to ord for deg: Ungarsk notat.
Nei, jeg snakker ikke om Systems Hungarian, der datatypen til objektet er kodet inn i et prefiks av navnet:
var intCounter: int = 0; var boolBestScore: Boolean = false; var nHeight: Number = 120; var btnOK: SimpleButton = ny knapp ();
Ingen bruker fortsatt det, er de? Med en anstendig IDE kan du enkelt fortelle datatypen til en hvilken som helst variabel; Det er lite behov for å få den informasjonen i navnet på variabelen.
Jeg snakker om Apps Hungarian, hvor hensikt av objektet er kodet inn i et prefiks av navnet:
var dHeight: Number = newHeight - oldHeight; // d for 'forskjell' var cChildren: int; // c for 'count' var degAngle: Number; // deg for 'grader' var radAngle: Nummer; // rad for 'radianer'
(Sjekk ut Joel Spolskijs utmerkede artikkel Gjør feil kode, se feil for mer informasjon om dette.)
Bruker du noen form for ungarsk notasjon, eller er det helt unødvendig i et OOP-språk som AS3?