20 czerwca 2011

Preconditions

Aby tworzyć bardziej bezpieczny kod można stosować programowanie kontraktowe. Jest to sposób organizowania kodu, który głównie polega na tym, aby przed wykonaniem operacji i po wykonaniu operacji sprawdzić status aplikacji. Mowa tu o wczesnym wykryciu potencjalnego źródła błędu.


Do implementacji kontraktów stosuje się asercje( ta strona przedstawa to od strony języka C) i wyjątki.

Jednak stosowanie wyjątków do tego celu jest nieco żmudne, bo dla każdego postawionego warunku trzeba rzucać osobny wyjątek. Z resztą taki kod nie czyta się najlepiej.

W bibliotekach guava od google można znaleźć ciekawe rozwiązanie dla tej sytuacji. Mowa o preconditions.

Implementacja tego rozwiązania jest bardzo prosta, bo z reguły opiera się na opakowaniu rzutu wyjątkiem przez statyczną funkcję. Poniższy kod przedstawia moje rozwiązanie w wersji dla AS3.

Brak komentarzy:

Prześlij komentarz