Påstande bør bruges til at kontrollere noget, der aldrig burde ske, mens en undtagelse skal bruges til at kontrollere noget, der kan ske. For eksempel kan en funktion dividere med 0, så en undtagelse bør bruges, men en påstand kan bruges til at kontrollere, at harddisken pludselig forsvinder.
Er påstand god eller dårlig?
Nej, hverken goto eller hævde er onde. Men begge dele kan misbruges. Assert er til fornuftskontrol. Ting, der burde dræbe programmet, hvis de ikke er korrekte.
Hvorfor er påstande dårlige?
Påstande kan bruges til at verificere interne implementeringsinvarianter, såsom intern tilstand før eller efter udførelse af en metode osv. Hvis påstanden mislykkes, betyder det virkelig, at programmets logik er brudt, og at du kan' ikke komme dig over dette.
Er påstande god praksis?
Sprogguiden, der introducerer påstande, har nogle gode retningslinjer, som grundlæggende er det, jeg lige har beskrevet. Ja, det er god praksis. I Spring-sagen er det særligt vigtigt, fordi kontrollerne validerer egenskabsindstillinger osv., der typisk kommer fra XML-ledningsfiler.
I hvilke tilfælde er påstande nyttige?
Forudsat at koden bliver korrekt testet, gør påstande flere nyttige ting: Opdag subtile fejl, der ellers ville blive uopdaget . Opdag fejl hurtigere, efter de er opstået, end de ellers ville blive opdaget. Lav en erklæringom virkningerne af koden, der med garanti er sand.