AISD str B
Przykład 1.1. Specyfikacja nieformalna automatycznego parkingu samochodowego: Parking może przyjąć lub wydać samochód identyfikowany numerem rejestracyjnycm. Parking nie może przyjąć kolejno dwóch samochodów o tym samym numerze. Jeżeli parking przyjął samochód to zawsze można go odebrać przez wywołanie operacji zwracania. Jeżeli samochodu nie ma na parkingu, to na żądanie zwrotu samochodu odpowiedzią jest sygnał błędu.
Przykład 1.2. Specyfikacja typu stos z aksjomatami dla top i pop.
Nazwy rodzajów nośnika: stack,elem
Nazwy operacji i ich amość: empty->stack, push: stack x elem -> stack, top:stack -> elem, pop:stack -> stack
Równania opisujące sposób działania operacji:
Vs:stack,e: elem top(push(s,e))=e Vs:stack,e: elem pop(push(s,e))=s
Przykład 1.3. Przykład klasy - licznik działający cyklicznie, class Count { nat s; public:
CountO { s = 0;}
void incO { s = s + 1; if (s = 32) s = 0;} bool is_zeroO { return s = 0;)
}
STRUKTURY DANYCH A POJĘCIE OBIEKTOWOŚCI
W praktyce informatyki pojęcie obiektu jest utożsamiane z fragmentem pamięci operacyjnej gdzie przechowywana jest w formie binarnej wartość jakiegoś typu, na której można wykonywać operacje zdefiniowrane pizez typ danych. Jednak wygodniej jest myśleć o obiekcie jako o wartości (elemencie zbioru wartości określonego przez system typów danych).
Def. Struktura danych (zbiór obiektów z fiaikcjami wyznaczania następnika)
Strukturę danych stanowi skończony zbiór węzłów-obiektów oraz opis bezpośredniego następstwa węzłów u strukturze. Bezpośrednie następstwo opisuje się z użyciem fiinkcji, które odwzorowują stan obiektu zwierającego strukturę i węzeł struktury> na jego następnik. Poszczególne powiązania par węzłów nazywa się też krawędziami.
W podejściu obiektowym strukturę danych wraz z algorytmami zamyka się w jedną całość tworząc typ danych. Konkretne struktury są wtedy obiektami utworzonego typu.
W praktyce informatyki pojęcie zmieimej jest utożsamiane z fragmentem pamięci operacyjnej gdzie pizechowywana jest w formie binarnej wartość jakiegoś typu, na której można wykonywać operacje zdefiniowane przez ten typ danych. O zmiennej obiektu można też myśleć jako o fiinkcji odwzorowującej wartość obiektu na wartość składowej reprezentowanej nazwą tej zmiennej.
2