Wzorce Projektowe - Warsztaty - Code Sprinters
Posted on 8 sierpnia 2016 / Posted by Rafał Markowicz
*/?>

Wzorce Projektowe – Warsztaty

Wzorce_Projektowe_BannerWarsztaty Wzorców Projektowych to dwa dni wykładów i praktycznych ćwiczeń prowadzonych przez doświadczonego trenera, pod którego okiem uczestnicy nauczą się jak stosować wzorce projektowe w swojej codziennej pracy. Warsztaty realizowane są w kontekście technologii Java lub Python.

DLA KOGO JEST TO SZKOLENIE?

Szkolenie realizowane jest z myślą o programistach i wszystkich członkach zespołów rozwijających oprogramowanie, którzy posiadają podstawową wiedzę pozwalającą im programować w wybranej technologii (Java lub Python).

CZYM SĄ WZORCE PROJEKTOWE?

Inżynieria oprogramowania rozwinęła się w olbrzymim stopniu od czasów pierwszych projektów IT z ubiegłego wieku. Na przestrzeni lat popełniono wiele błędów projektowych, równie wiele decyzji odnośnie sposobu implementacji rozwijanych systemów informatycznych okazało się nietrafionych. Nieustannie pojawiają się coraz doskonalsze narzędzia i technologie wspierające pracę developerów, pęcznieją bazy wiedzy podpowiadające jak tworzyć kod w sposób optymalny. A mimo to developerzy bardzo często powtarzają te same błędy, tworząc kod trudny do rozwoju i utrzymania.

Tworzenie oprogramowania to zadanie trudne samo w sobie, a rozwój produktu wartościowego biznesowo, łatwego w adaptacji i składającego się z elementów zdatnych do ponownego użycia, jest niewątpliwie wyzwaniem. Aby nie borykać się z problemami, które kiedyś już zostały skutecznie rozwiązane, trzeba poprawnie stosować dobrze znane i przetestowane rozwiązania – takie jak wzorce projektowe – i korzystać z nauki płynącej z błędów popełnionych przez innych.

Wzorce projektowe to sprawdzone w praktyce sposoby rozwiązania typowych i powtarzalnych problemów projektowych. Stanowią bezcenny bagaż doświadczeń i zarazem wygodną skrzynkę narzędziową, której elementy każdy inżynier oprogramowania powinien dobrze znać. Wzorce mogą być stosowane na wszystkich etapach tworzenia oprogramowania w celu poprawy jakości kodu źródłowego, przyspieszają również sam proces jego tworzenia.

Projektowanie i tworzenie kodu nie jest jedyną rzeczą, która się liczy we wzorcach projektowych. Równie istotne w ich zastosowaniu jest to, że wprowadzają one jednolite i powszechnie stosowane słownictwo, które znacząco poprawia komunikację z tymi, którzy już opanowali wzorce projektowe.

JAK UCZYMY KORZYSTANIA Z WZORCÓW PROJEKTOWYCH?

Warsztaty trwają dwa dni (po 8 godzin) i obejmują:

  • wszystkie wzorce projektowe opisane w słynnej książce „Design Patterns: Elements of Reusable Object-Oriented Software” autorstwa Ericha Gamma, Richarda Helma, Ralpha Johnsona oraz Johna Vlissidesa (czyli tak zwanego „Gangu Czterech”),
  • zasady Object-Oriented Design,
  • dobre praktyki projektowe,
  • narzędzia ułatwiające pracę developerów.

Uczestnicy w toku szkolenia zdobędą praktyczną umiejętność korzystania z wzorców projektowych, zademonstrowaną i wypróbowaną na przykładach przygotowanych przez trenera i rzeczywistych przypadkach z życia wziętych.

Warsztaty Wzorców Projektowych realizowane są w technologiach Java lub Python.

PROGRAM SZKOLENIA

  1. Wprowadzenie:
    • Wartości dobrego oprogramowania
    • Pojęcie jakości i jej rodzaje w oprogramowaniu
    • Proces wytwórczy w branży oprogramowania
  2. Projektowanie obiektowe
    • Zasady projektowania obiektowego (Object-Oriented Pattern)
    • Zasady S.O.L.I.D
    • Zapachy kodu (code smells)
  3. Wzorce projektowe (design patterns):
    • Idea wzorców
    • Rodzaje wzorców i ich klasyfikacja
  4. Wzorce Strukturalne (Structural Patterns):
    • Klasowe:
      • Adapter
    • Obiektowe:
      • Adapter
      • Dekorator (Decorator)
      • Fasada (Façade)
      • Pełnomocnik (Proxy)
  5. Wzorce Kreacyjne (Creational Patterns):
    • Klasowe:
      • Metoda wytwórcza (Factory Method)
    • Obiektowe:
      • Fabryka Abstrakcyjna (Abstract Factory)
      • Budowniczy (Builder)
      • Prototyp (Prototype)
      • Singleton
  6. Wzorce Behawioralne (Behavioral Patterns):
    • Klasowe:
      • Metoda szablonowa (Template Method)
    • Obiektowe:
      • Łańcuch zobowiązań (Chain of Responsibility)
      • Polecenie (Command)
      • Iterator
      • Obserwator (Observer)
      • Strategia (Strategy)
      • Odwiedzający (Visitor)
  7. Warsztat analizy aplikacji z wykorzystaniem poznanych wzorców projektowych

Dodatkowe zagadnienia dla technologii Python

Program szkolenia realizowanego w technologii Python obejmuje ponadto następujące zagadnienia:

  1. Idiomy języka programowania
    • Pojęcie idiomu językowego
    • Wzorce i idiomy specyficzne dla języka Python
    • Wzorzec EFAP (It’s easier to ask for forgiveness than permission)
    • Wzorzec Metaklasy
    • Wielodziedziczenie
    • Borg
    • Klasa domieszkowa w języku Python (Mixin)
  2. Przegląd narzędzi do statycznej i dynamicznej analizy kodu oraz pisania testów jednostkowych:
    • PyLink
    • Coverage
    • PyTest
  3. Przegląd współczesnych podejść do tworzenia architektury aplikacji lub klastra aplikacji:
    • Microservices
    • Client-Side MVC
    • Server-Side MVC
    • Distributed Systems (Celery, Etcd or Consul)

TRENERZY PROWADZĄCY SZKOLENIE

JAK PRZYGOTOWAĆ SIĘ DO SZKOLENIA?

Aby uczestnicy warsztatu mogli efektywnie uczestniczyć w realizacji ćwiczeń i pracy z kodem, niezbędna jest znajomość podstaw programowania w języku Java lub Python (w zależności od technologii, w której realizowane jest szkolenie).

TERMINY SZKOLEŃ ORAZ CENY I WARUNKI

Warsztaty Wzorców Projektowych to warsztaty „szyte na miarę”, możemy dostosować ich zakres do indywidualnych potrzeb uczestników.

Cena warsztatu zawiera:

  • 2 dni intensywnej pracy z wzorcami projektowymi,
  • materiały szkoleniowe.

KONTAKT I ZAPISY

Warsztat jest organizowany na zamówienie. W celu poznania szczegółów zapraszamy do kontaktu:

INFORMACJE DODATKOWE

Rezygnacja z pełnym zwrotem wpłaconej kwoty możliwa jest do trzech tygodni przed datą szkolenia. Po tej dacie rezygnacje nie są możliwe, można jednak zmienić osoby mające wziąć udział w szkoleniu przy zachowaniu liczby wykupionych rezerwacji. Zwrot pełnej wpłaconej kwoty nastąpi także gdyby – co mało prawdopodobne – szkolenie musiało zostać odwołane.


NAJCZĘŚCIEJ ZADAWANE PYTANIA

Czy możecie zorganizować szkolenie w moim mieście?

Jasne! Napisz do nas na info@codesprinters.com i zaproponuj miejsce oraz tematykę szkolenia.

Czy szkolenie może być dostosowane do potrzeb grupy?

Może, a nawet tego wymagamy, wówczas szkolenie przynosi większą wartość zespołowi, a w efekcie końcowym całej organizacji.


ZOBACZ RÓWNIEŻ INNE SZKOLENIA