Skip to main content

Posts

Showing posts with the label spec#

Code Contracts

Este un tool pentru definirea specificatiilor si pentru validarea acestora in cod. Are la baza conceptul definit de Vienna Development Method( VDM) care defineste o metoda formala pentru definirea specificatiilor unui soft si definirea integritatii acestuia. VDM defineste trei elemente: invariantii - un set de conditii ce trebuie sa fie adevarate in orice moment pe durata de viata a instantei; preconditii - un grup de conditii folosite pentru validarea datelor de intrare; postconditii - una sau mai multe conditii care valideaza rezultatul; Code Contracts nu ne asigura ca programul este corect, doar ne asigura ca un set de reguli sunt indeplinite( iar o parte din specificatii sunt respectate). La baza Code Contracts sta Spec# care apare in 2007.Aceasta librarie este integrata cu Visual Studio 2010 in 2009. Echivalentrul in Java este Eiffel, care apare cu mult inainte de Spec#. Mai jos o sa dau un exemplu de cod scris fara Code Contracts care concateneaza o lista de cuvinte: public strin...