Aserce
Technology
12 hours ago
8
4
2
Author
Albert FloresAserce jsou v programování predikáty, o nichž se vývojář domnívá, že budou na daném místě vždy pravdivé, například předpokládané hodnoty invariantů. Informace o těchto předpokladech může programátor umístit do komentáře, ale běžné je také zahrnout do programu testy, které buď při překladu, nebo i při běhu programu splnění předpokládaných podmínek kontrolují.
Nejedná se o ošetření očekávaných chybných stavů, například špatného vstupu od uživatele. Jedná se pouze o detekci stavů, které by neměly v rámci programu nastat za žádných okolností.
Řada programovacích jazyků pro takové kontroly nabízí určitou podporu, která asercím zároveň dává standardizovanou podobu. Také je často možné takto standardizované aserce snadno zapnout či vypnout, například aby nezpomalovaly běh programu, když už je považován za odladěný. +more Na druhou stranu, přítomnost aserce může překladači vymezit některé stavy jako nemožné a tím přispět k optimalizaci.