Konspekt referatu "Wzorce projektowe" (termin wygłaszania: 28.XI.05) Autor: Sebastian Kaczanowski 1) "reużycie" (ang. reusing), czyli elastyczność, jako jedna z ważniejszych cech aplikacji. 2) Najważniejsze zasady tworzenia elastycznych aplikacji. - kapsułkowanie - programowanie pod kątem interfejsów - składanie obiektów a dziedziczenie (z przykładem kodu, który okaże się być realizacją wzorca Dekorator) - zasada Demeter ("Nie rozmawiaj z nieznajomymi" - Obiekt powinien się odwoływać tylko do siebie, swoich atrybutów i argumentów swoich metod). 3) Skąd się biorą wzorce projektowe? (Cały wywód poniżej jest, mam wrażenie, niedokładnym cytatem z jakiejś książki, której tytułu nie mogę sobie przypomnieć, może ktoś to wie, jeśli tak to proszę o pomoc) --- slajd 1 --- Na początek o tym skąd się nie biorą: - Nie są wymyślane na podstawie przedstawionych wyżej zasad przez niezależne zespoły ekspertów tworzących informatykę jutra - Z reguły nie można nawet powiedzieć, że są tworzone w takim sensie, w jakim tworzy się projekt, czy implementację czegoś. --- slajd 2 --- Więc skąd się biorą wzorce projektowe? Klasyczna metoda pozyskiwania wzorca polega na tym, że przegląda się wiele systemów (łącznie z historią ich tworzenia, pielęgnacji i rozbudowy), w których napotkano problem, którego rozwiązanie chcielibyśmy zapisać w postaci wzorca. Sprawdza się, które z rozwiązań wymyślonych przez programistów okazało się najbardziej elastyczne i je zapisuje się jako wzorzec. --- slajd 3 --- Co z tego wynika? Gdy próbujesz rozwiązać problem "zapisany we wzorcu", pamiętaj, że bardzo wielu ludzi przed Tobą próbowało go w różny sposób rozwiązać. Ogromnej większości z nich nie udało się tego zrobić lepiej niż to pokazuje wzorzec. Na pytanie, kiedy stosować wzorzec projektowy, jeśli napotkamy problem, który da się rozwiązać za jego pomocą, należy odpowiedzieć: ZAWSZE (z bardzo dużym prawdopodobieństwem ;). 4) Co to jest wzorzec projektowy? (Wzorzec projektowy, to sposób rozwiązania pewnej klasy problemów projektowych, pomyślany tak, żeby uzyskane za jego pomocą rozwiązanie było bardzo elastyczne. Z reguły wzorce projektowe przedstawiają rozwiązania wielokrotnie sprawdzone w różnych projektach. Opisanie elementów składających się na wzorzec: nazwa wzorca, problem, rozwiązanie, konsekwencje.) 5) Wzorce projektowe w smalltalkowym MVC. 6) Podział na wzorce: kreacyjne, strukturalne i czynnościowe. 7) Katalog wzorców. Dokładne omówienie wzorców: - kompozyt - fabryka abstrakcyjna - strategia - metoda szablonowa 8) Literatura