> Aserce kontroluji, zda modul dostava spravne vstupy a jeho stav je
> korektni. Je to takova velmi omezena varianta Design by Contract.
> Nemely by se pouzivat na overovani vstupu od uzivatele, jen na obranu
> pred programatorskymi chybami.
> Typicke pouziti:
> Scitac je napsan jen pro nezaporna cisla. To je popsano v dokumentaci.
> Na jeho zacatku se assertem overi, ze cisla skutecne nejsou zaporna.
> Pokud by ho nejaky programator pouzil spatne, brzy se to dozvi.
> (Otazkou je, zda trebas tady radeji nepouzit InvalidArgumentException,
> hranice je neostra.)

Java assert se nema pouzivat na kontrolu parametru public metod, viz
http://download.oracle.com/javase/1.4.2/docs/guide/lang/assert.html#usage-conditions
Asi protoze ten assert se ma na produkci vypinat.

Misto toho treba Spring ma Assert tridu:
http://static.springsource.org/spring/docs/3.0.x/api/org/springframework/util/Assert.html
(A ja si taky kdysi jednu vyrobil:
http://xmedeko.blogspot.com/2010/12/java-simple-assert-class-for-design-by.html)

Odpovedet emailem