Findbug je můj dnešní objev dne :-) Díky za tip! Když už jsme u těchle typů programů. Je ještě nějaký dobrý "lint" pro Javu?
Libor 2011/4/5 Ondřej Fafejta <[email protected]> > Ještě doplním, že v některých případech nechceme vracet defenzivní kopii > datumu. > Můžeme potlačit findbugs warning pomocí anotace. > > např. > @edu.umd.cs.findbugs.annotations.SuppressWarnings(value="MALICIOUS_CODE") > private Date createdAt; > > viz. maven dependency > > <dependency> > <groupId>findbugs</groupId> > <artifactId>annotations</artifactId> > <version>1.0.0</version> > <scope>compile</scope> > </dependency> > > Fafi > > > 2011/4/5 Libor Jelinek <[email protected]>: > > Díky za veškeré konzultace. > > > > Jinak ano, Joshua Blosh je skvělý. Kdysi dávno jsem si koupil první edici > > vydanou Gradou, ale už pár let co jsem neprogramoval se na ní jenom práší > > :-) Tohle je typ knihy do které se vyplatí investovat a i si ji třeba z > > Amazonu objednat. > > > > Libor > > > > 2011/4/5 Ladislav Thon <[email protected]> > >> > >> Předně, tohle může být někdy chtěné (i když teoretici OOP by vám za to > >> urvali hlavu). Pokud ne, getter by měl vracet kopii (někdy se říká > >> "defenzivní kopii "), ne přímo tu členskou proměnnou. > >> > >> Konkrétně u Date se dokonce někdy dělá i to, že uvnitř objektu se > uchovává > >> jen long hodnota date.getTime(), každopádně getter vypadá > >> > >> Date getNarozeni() { > >> return new Date(narozeni.getTime()); > >> } > >> > >> Pokud se dobře pamatuju, dobře je to popsáno v Effective Java > (doporučuju > >> druhé vydání, byť myslím není dostupné v češtině). > >> > >> LT > >> >
