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



Optymalizacja listy poleceń

W pewnych przypadkach klasa przechowująca i wywołująca polecenia może optymalizować liczbę przechowywanych poleceń. Może się tak stać w przypadku gdy kolejno przesyłane polecenia tego samego rodzaju można zastąpić jednym poleceniem (np. kolejne przesunięcie położenia manipulatora o punkty (0,10), (10, 10), (20, 5) może zostać zastąpione poleceniem przesunięcia o punkt (30,25)). Ostatni lub ostatnie obiekty znajdujące się w kolejce poleceń oraz obiekt przesyłany do metody ustawPolecenie() były by usuwane, ale tworzony byłby nowy obiekt polecenia realizujący taką samą pracę jak wszystkie obiekty osobno.

Niestety implementacja takiego rodzaju optymalizacji wymagałaby rozpoznawania konkretnego typu obiektów poleceń przesyłanych za pomocą metody ustawPolecenie() i znajdujących się w kolejce poleceń za pomocą operatora dynamic_cast<T>. Kolejną wadą wynikającą z zastosowania takich optymalizacji jest skomplikowanie mechanizmu wycofywania operacji. Jeśli do obiektu klasy zarządzającej byłby przesyłany obiekt polecenia, który został by złożony z innym obiektem to operacja wycofywania nie dotyczyła by już tylko ostatniej operacji, ale również tych które wchodziły w skład złożenia.

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