Au Tpojka. Prosto nisam mogao da izdrzim da ne prokomentarisem pisanje varijabli gde joj u imenu navodis access. Prvi put to u zivotu vidim.
Ranije dok editori nisu bili ovoliko mocni private je pocinjao sa _ tj. $_is_something a public je bio $is_something.
Prva verzija php-a sa klasama php 3 nije podrzavala private, public i protected keyworde pa su se ljudi snalazili na ovaj nacin sa _.
To neko "pravilo" je kratko trajalo jer se vec sa narednom verzijom uvidela besmislica toga.
Sta ako jednog dana public postane private? Onda menjas ime svuda u klasi ili sta? Ili jos gore public postane protected i onda svuda i van klase to manjes?
Zar mislis da ako u imenu stavis da je priv da ce kod van ove klase videti variablu? Kod van klase videce samo public. Zasto je onda to bitno za kod van klase?
Zar je bitno u klasi da li je neka variabla public ili private? Pa unutar klase tebi je svejedno da li je private ili public. Isto radis sa njima.
Svi normalniji php editori imaju autocomplite koji daje dovoljno informacija bez da tako opisujes varijablu.
Code (php):
/**
@access private
@var bool [=false]
*/
private $is_something = false;
Eto ako bas hoces da ti lepo pise access ali mislim da nema potrebe. Ako ne koristis access kako treba kod ti jednostavno nece raditi bez obzira kako je nazoves.
Prosto ne vidim ni jedan argument da se to tako radi.
Druga stvar za Lacketa.
Treba izbegavati __get i __set jer se takav kod tesko testira, nikada ne znas sta mozes da ocekujes i nemas potpunu kontrolu nad tokom.
Ako neki drugi uzme da radi na kodu mora da zna koje sve varijable mozes da setujes ili pozoves. Nemoj ocekivati da bilo ko drugi sem tebe to skonta bez da pola dana
bulji u kod.
__set i __get dosta usporava kod.
Nemas autocomplite.
Recimo da setujes polje koje se zove u bazi name i posle promenis u bazi sa username.
Problemi!
Ne kazem da ne koristis, stvar izbora, ali mislim da komplikujes sebi zivot :)
Verovatno postoje slucajevi kada je ovo korisno ali nisam naisao do sada na kod gde ovaj kod ima vise koristi nego stete.
[Ovu poruku je menjao VladaSu dana 14.06.2003. u 11:22 GMT+1]