Opis
- Identyfikacja i umiejętność implementacji wzorców projektowych GoF we własnych projektach.
- Umiejętność określania kosztów i zysku zastosowania wybranego wzorca.
- Określanie kontekstu poprawnej implementacji wybranego wzorca projektowego.
Cel
- Zapoznanie się z „klasycznymi” wzorcami projektowymi oraz siłami nań wpływającymi i kontekstem ich stosowania
- Zapoznanie się z zaawansowanymi aspektami implementowania wzorców projektowych we własnych projektach
- Zapoznanie się z mocnymi i słabymi stronami każdego z wzorców projektowych
Grupa docelowa:
Kurs jest przeznaczony dla osób programujących już w języku Python na poziomie średnio zaawansowanym, które chcą zapoznać się z zastosowaniem i implementowaniem wzorców projektowych we własnych aplikacjach. Zajęcia skupiają się na zaprezentowaniu na rzeczywistych przykładach zakresu zastosowań wzorców projektowych w języku Python i co bardzo istotne, przykładów pozytywnych jak i negatywnych. Zakres zagadnień ćwiczeń wykonywanych w trakcie zajęć obejmuje także podejmowanie i weryfikowanie decyzji architektonicznych związanych z zastosowaniem konkretnych wzorców projektowych w rozbudowanych aplikacjach. Zajęcia skupiają się wyłącznie na wzorcach GoF.
Szkolenie trwa 4 dni.
Możliwa realizacja w lokalizacjach wskazanych przez klienta.
W celu ustalenia szczegółów prosimy o kontakt na osec@osec.pl
Wymagania:
- Umiejętność programowania w języku Python na poziomie średnio zaawansowanego programisty
- Znajomość podstaw analizy obiektowej
- Znajomość języka UML na poziomie średnio zaawansowanym
- Biegłe posługiwanie się wybranym środowiskiem IDE
Konspekt
- Wprowadzenie do wzorców projektowych
- Rola i znaczenie wzorców projektowych
- Siły wpływające na wybór wzorca
- Proponowane rozwiązania
- Kontekst rozwiązania
- Ogólne zakresy zastosowań wzorców projektowych
- Wzorce GoF a inne wzorce
- Metody klasyfikacji
- Strukturalne wzorce projektowe
- Adapter (klasowy i obiektowy)
- Most (ang. Bridge ) (obiektowy)
- Kompozyt (ang. Composite ) (obiektowy)
- Dekorator (ang. Decorator ) (obiektowy)
- Pyłek (ang. Flyweight ) (obiektowy)
- Fasada (ang. Façade ) (obiektowy)
- Pełnomocnik (ang. Proxy ) (obiektowy)
- Konstrukcyjne wzorce projektowe
- Metoda wytwórcza (ang. Factory Method ) (klasowy)
- Fabryka Abstrakcyjna (ang. Abstract Factory ) (obiektowy)
- Budowniczy (ang. Builder ) (obiektowy)
- Prototyp (ang. Prototype ) (obiektowy)
- Singleton (obiektowy)
- Behawioralne wzorce projektowe
- Łańcuch zobowiązań (ang. Chain of Responsibility ) (obiektowy)
- Polecenie (ang. Command ) (obiektowy)
- Interpreter (ang. Interpreter ) (klasowy)
- Interator (obiektowy)
- Mediator (ang. Mediator ) (obiektowy)
- Pamiątka (ang. Memento ) (obiektowy)
- Obserwator (ang. Observer ) (obiektowy)
- Stan (ang. State ) (obiektowy)
- Strategia (ang. Strategy ) (obiektowy)
- Metoda szablonowa (ang. Template Method ) (klasowy)
- Odwiedzający (ang. Visitor ) (obiektowy)
- Alokacja zasobu jest inicjalizacją (ang. RAII - Resource Acquisition Is Initialization ) (obiektowy)