Wzorce projektowe kreacyjne

Podobne dokumenty
WYKŁAD 5. Wzorce projektowe kreacyjne Builder Prototype

Wzorce projektowe strukturalne cz. 1

Wzorce projektowe. dr inż. Marcin Pietroo

Projektowanie obiektowe oprogramowania Wykład 4 wzorce projektowe cz.i. wzorce podstawowe i kreacyjne Wiktor Zychla 2017

Projektowanie obiektowe oprogramowania Wykład 4 wzorce projektowe cz.i. wzorce podstawowe i kreacyjne Wiktor Zychla 2015

Programowanie obiektowe

Projektowanie obiektowe Wzorce projektowe

Wstęp [2/2] Wbrew częstemu przekonaniu, nie są one gotowymi rozwiązaniami, to tylko półprodukty rozwiązania.

WYKŁAD 10. Wzorce projektowe czynnociowe Command Strategy

Wzorce projektowe cz. II. Wzorce projektowe cz. II 1/35

MiASI. Modelowanie analityczne. Piotr Fulma«ski. 18 stycznia Wydziaª Matematyki i Informatyki, Uniwersytet Šódzki, Polska

WYKŁAD 11. Wzorce projektowe czynnociowe Iterator TemplateMethod

Wprowadzenie do programowania aplikacji mobilnych

Model obiektu w JavaScript

Zaawansowane programowanie w C++ (PCP)

Testowanie oprogramowania Wzorce projektowe

Spis treści 1. Wstęp 2. Projektowanie systemów informatycznych

Builder (budowniczy) Cel: Przykład:

Podstawy modelowania w j zyku UML

Wzorce projektowe Michał Węgorek

Wzorce projektowe. dr inż. Marcin Pietroo

Problemy projektowania obiektowego. Czy podobne problemy można rozwiązywac w podobny sposób?

Prototype (prototyp) Cel: Przykład: Określenie rodzaju tworzonych obiektów poprzez wskazanie ich prototypu. Nowe instancje tworzymy kopiując prototyp.

Technologia Programowania 2016/2017 Wykład 4

WYKŁAD 9. Wzorce projektowe czynnociowe Observer Visitor

Technologia Programowania 2016/2017 Wykład 5


Wzorce projektowe cz. I. Wzorce projektowe cz. I 1/33

Wzorce projektowe ArrayList. Aplikacja i zdarzenia. Paweł Chodkiewicz

problem w określonym kontekście siły istotę jego rozwiązania

(wybrane) Wzorce projektowe. Programowanie Obiektowe Mateusz Cicheński

WYKŁAD 12. Wzorce projektowe czynnociowe State Mediator

Projektowanie obiektowe Wzorce projektowe. Gang of Four Strukturalne wzorce projektowe (Wzorce interfejsów)

(wybrane) Wzorce projektowe. Programowanie Obiektowe Mateusz Cicheński

Projektowanie obiektowe Wzorce projektowe. Gang of Four Wzorce rozszerzeń

Aplikacje internetowe oparte na kluczowych technologiach Java Enterprise(Servlet,JSP,JDBC, )

Baza danych - Access. 2 Budowa bazy danych

Singleton. Cel: Przykład: Zastosowanie: Zapewnienie, że klasa ma tylko jedną instancję i dostarczenie globalnego dostępu do niej.

Projektowanie oprogramowania: wzorce architektoniczne i projektowe

1 Klasy. 1.1 Denicja klasy. 1.2 Skªadniki klasy.

Podstawy modelowania w j zyku UML

Miejski System Zarządzania - Katowicka Infrastruktura Informacji Przestrzennej

Projektowanie obiektowe Wzorce projektowe. Gang of Four Wzorce odpowiedzialności

Wst p do informatyki. Systemy liczbowe. Piotr Fulma«ski. 21 pa¹dziernika Wydziaª Matematyki i Informatyki, Uniwersytet Šódzki, Polska

Programowanie Obiektowe

Zaawansowane programowanie obiektowe - wykład 5

Abstract Factory (fabryka abstrakcyjna)

Moduł. Rama 2D suplement do wersji Konstruktora 4.6

Analiza i projektowanie obiektowe 2016/2017. Wykład 11: Zaawansowane wzorce projektowe (1)

Konfiguracja historii plików

epuap Ogólna instrukcja organizacyjna kroków dla realizacji integracji

Metodydowodzenia twierdzeń

WEBML I UML JAKO NARZĘDZIA PROJEKTOWANIA APLIKACJI INTERNETOWYCH

Fraktale i ich zastosowanie

Ekonometria Bayesowska

Zofia Kruczkiewicz - Modelowanie i analiza systemów informatycznych 2

Wzorce oprogramowania Gof. zastosowane w modelu obiektowym

Systemy mikroprocesorowe - projekt

Aplikacje bazodanowe. Laboratorium 1. Dawid Poªap Aplikacje bazodanowe - laboratorium 1 Luty, 22, / 37

Korzy ci wynikaj ce ze standaryzacji procesów w organizacjach publicznych a zarz dzanie jako ci

Listy i operacje pytania

Programowanie obiektowe

Granular Computing 9999 pages 15 METODY SZTUCZNEJ INTELIGENCJI - PROJEKTY

Android. Podstawy tworzenia aplikacji. Piotr Fulma«ski. March 4, 2015

, dnia roku (miejscowość)

System Informatyczny CELAB. Przygotowanie programu do pracy - Ewidencja Czasu Pracy

Różne odmiany budowniczego. Po co używać wzorca budowniczy? Kiedy używać budowniczego

Wzorce projektowe. dr inż. Marcin Pietroo

Dzisiejszy wykład. Wzorce projektowe. Visitor Client-Server Factory Singleton

Listy Inne przykªady Rozwi zywanie problemów. Listy w Mathematice. Marcin Karcz. Wydziaª Matematyki, Fizyki i Informatyki.

Perspektywa obiektowości

Wzorce Strukturalne. Adapter: opis. Tomasz Borzyszkowski

Interfejsy, klasy wewn trzne jako szczególny rodzaj obiektów

Lekcja 8 - ANIMACJA. 1 Polecenia. 2 Typy animacji. 3 Pierwsza animacja - Mrugaj ca twarz

Zad. 1 Zad. 2 Zad. 3 Zad. 4 Zad. 5 SUMA. W obu podpunktach zakªadamy,»e kolejno± ta«ców jest wa»na.

Ekonometria Bayesowska

Wprowadzenie do kompilatorów

Badania (PN-EN A1:2010) i opinia techniczna drzwi zewnętrznych z kształtowników aluminiowych z przekładką termiczną systemu BLYWEERT TRITON

OmniTouch 8400 Instant Communications Suite 4980 Softphone

Ostatnia cena sprzeda y klienta 1.0 dodatek do Symfonia Faktura dla 1 firmy

PROJEKT TYMCZASOWEJ ORGANIZACJI RUCHU

EKSPERTYZA STANU TECHNICZNEGO BUDYNKU ADMINISTARACYJNO-BIUROWEGO

Wrocław, 20 października 2015 r.

KLOCKI W OKIENKU

Iteracyjno-rozwojowy proces tworzenia oprogramowania Wykład 3 część 1

Wzorce projektowe. Wstęp

Programowanie i projektowanie obiektowe

WZORCE PROJEKTOWE (I) (DESIGN PATTERNS)

Zamówienia publiczne w PKP PLK S.A. w obszarze inwestycji kolejowych. Warszawa, 10 maja 2016 r.

System kontroli wersji SVN

Zintegrowane Systemy Zarządzania Biblioteką SOWA1 i SOWA2 SKONTRUM

i, lub, nie Cegieªki buduj ce wspóªczesne procesory. Piotr Fulma«ski 5 kwietnia 2017

Projekt "Integracja i aktywność" współfinansowany ze środków Unii Europejskiej w ramach Europejskiego Funduszu Społecznego

POLITECHNIKA WROCŠAWSKA WYDZIAŠ ELEKTRONIKI PRACA DYPLOMOWA MAGISTERSKA

Podziaª pracy. Cz ± II. 1 Tablica sortuj ca. Rozwi zanie

Przetwarzanie sygnaªów

1. Odcienie szaro±ci. Materiaªy na wiczenia z Wprowadzenia do graki maszynowej dla kierunku Informatyka, rok III, sem. 5, rok akadem.

MiASI. Modelowanie systemów informatycznych. Piotr Fulma«ski. 18 stycznia Wydziaª Matematyki i Informatyki, Uniwersytet Šódzki, Polska

Omówienie wzorców wykorzystywanych w Prism 5.0. Dominika Różycka

Transkrypt:

Wzorce projektowe kreacyjne Krzysztof Ciebiera 14 pa¹dziernika 2005 1

1 Wst p 1.1 Podstawy Opis Ogólny Podstawowe informacje Wzorce kreacyjne sªu» do uabstrakcyjniania procesu tworzenia obiektów. Znaczenie wzorców ro±nie wraz z wykorzystywaniem skªadania zamiast dziedziczenia. Wzorce kreacyjne kapsuªkuj wiedz o tym jakich klas u»ywa system. Wzorce kreacyjne ukrywaj w jaki sposób egzemplarze s tworzone i ª - czone ze sob. Uwaga Czasem bardzo trudno jest wybra jeden z wzorców, gdy» s one do siebie podobne. 1.2 Diagram klas prostej gry 2 Wzorce 2.1 Budowniczy Wzorzec Budowniczy (ang. Builder)

Wzorzec ten oddziela konstrukcj obiektów zªo»onych od ich reprezentacji, umo»- liwiaj c tym samym powstawanie w jednym procesie konstrukcyjnym ró»nych reprezentacji. Czytnik plików RTF. algorytm tworzenia obiektu powinien by niezale»ny od cz ±ci skªadowych tego obiektu i sposobu ich zestawienia, proces konstruowania musi uwzgl dnia ró»ne reprezentacje konstruowanego obiektu. Struktura budowniczego Wspóªpraca Klient tworzy obiekt Kierownik i konguruje go za pomoc po» danego obiektu Budowniczy. Kierownik informuje budowniczego o potrzebie zbudowania cz ±ci produktu. Budowniczy przetwarza» dania kierownika i dodaje cz ±ci do produktu Klient odbiera produkt od budowniczego. 2

Konsekwencje Konsekwencje Umo»liwienie zmiany wewn trznej reprezentacji produktu. Oddzielenie kodu sªu» cego do konstruowania od reprezentacji. Lepsza kontrola procesu konstruowania. 2.2 Fabryka Abstrakcyjna Fabryka Abstrakcyjna (ang. Abstract Factory) Wzorzec ten oddziela konstrukcj obiektów zªo»onych od ich reprezentacji, umo»- liwiaj c tym samym powstawanie w jednym procesie konstrukcyjnym ró»nych reprezentacji. System który ma obsªugiwa bazy MySQL i Postgres. fabryki abstrakcyjnej system powinien by niezale»ny od tego, jak jego produkty s tworzone, skªadane i reprezentowane system powinien by kongurowany przy u»yciu jednej z wielu rodzin produktów rodzina zwi zanych ze sob obiektów-produktów jest zaprojektowana tak, by te obiekty byªy u»ywane razem, a nam zale»y na zachowaniu tego ograniczenia chcemy dostarczy bibliotek klas produktów, ujawniaj c jedynie ich interfejsy, a nie implementacje Struktura fabryki abstrakcyjnej 3

2.3 Metoda Wytwórcza Metoda Wytwórcza (ang. Factory Method) Wzorzec ten okre±la interfejs do tworzenia obiektów, lecz umo»liwia podklasom decydowanie o tym, której klasy ma to by obiekt. Dzi ki Metodzie Wytwórczej klasy mog zda si na podklasy w kwestii tworzenia egzemplarzy. Zr b aplikacji MDI. metod wytwórczych klasa nie mo»e przewidzie, jakich klas obiekty musi tworzy klasa chce, by to jej podklasy specykowaªy tworzone przez ni obiekty klasy przekazuj odpowiedzialno± jednej z kilku podklas pomocniczych, a Ty chcesz tylko w jednym miejscu ustali, która z podklas pomocniczych jest ich delegatem Struktura fabryki abstrakcyjnej 4

2.4 Prototyp Prototyp (ang. Prototype) Wzorzec ten specykuje rodzaje tworzonych obiektów, u»ywaj c prototypowego egzemplarza, a tak»e tworzy nowe obiekty, kopiuj c ten prototyp. Narz dziegraczne w zr bie MDI. prototypu klasy, których egzemplarze chcesz tworzy, s specykowane w czasie wykonywania programu, na przykªad przez dynamiczne ªadowanie chcesz unikn budowania hierarchii klas fabryk, która jest porównywalna z hierarchi klas produktów, stan obiektów klasy mo»e przyjmowa tylko jedn z kilku ró»nych warto±ci; mo»e by wówczas wygodniej zainstalowa odpowiedni liczb prototypów i klonowa je ni» r cznie tworzy egzemplarze klasy, za ka»dym razem z odpowiednim stanem Struktura Prototypu 5

6