Pakiet programów do zdalnego nauczania Programowania Orientowanego Obiektowo
Dzisiaj jest
Środa, 18 Lipiec 2018
Zarejestrowanych użytkowników: 4
Dostępnych pytań testowych: 102
HOME
Strona tytułowa pracy dyplomowej
NAUKA
Materiały dydaktyczne związane z OOP
TESTY
Sprawdzenie poziomu zdobytej wiedzy
ZASOBY
Literatura i zasoby sieciowe o OOP
ŹRÓDŁA
Zbiór projektów dydaktycznych z OOP
KONTO
Możliwość śledzenia własnych postępów
INFO



Abstrakcja klasy bazowej budowniczego

W przedstawionym przykładzie wszystkie z metod budujących części produktu końcowego, a więc: ustawiania adresu urządzenia docelowego, wyboru procedury, wyboru parametrów oraz obliczania sumy kontrolnej CRC były metodami czystowirtualnymi w klasie bazowej. Aby więc móc stworzyć poprawną instancję budowniczego konkretnego metody te musiały zostać zaimplementowane w klasach pochodnych, nawet jeśli nie wykonywały żadnego działania (np. metoda dodajCRC() dla klasy BudowniczyAscii).

Innym (od przedstawionego) rozwiązaniem jest pozbawienie abstrakcji bazowej klasy Budowniczego i implementacja w tej klasie domyślnego zachowania produkcji części składowych. W przedstawionym przykładzie co prawda nie miałoby to dużego sensu (klasy BudowniczyAscii oraz BudowniczyUpakowany różnią się na tyle znacząco, że i tak należy przedefiniować wszystkie lub prawie wszystkie metody wirtualnej klasy bazowej), ale w znacznej części zastosowań jest to nawet powszechniejsze rozwiązanie niż stosowanie abstrakcyjnej klasy bazowej.

Adamik Łukasz, Politechnika Śląska w Gliwicach (AEiI) - 2010/11