VOUCHERY: Wykorzystaj budżet szkoleniowy 2024 w przyszłym roku. Nie wykorzystałeś tegorocznego budżetu szkoleniowego? Nic straconego! Zakup vouchera umożliwia wykorzystanie budżetu w jednym okresie rozliczeniowym, a zrealizowanie go w innym. Dowiedz się więcej


Szkolenie kompleksowe: Wzorce projektowe GoF w Javie

by:
Czas trwania 5 dni

Najbliższe terminy tego szkolenia

09.12 13.12 Termin gwarantowany Szkolenie online Ostatnie miejsca!
Zapisz się
10.03 14.03 Termin gwarantowany Szkolenie online Ostatnie miejsca!
Zapisz się
23.06 27.06 Termin gwarantowany Szkolenie online Ostatnie miejsca!
Zapisz się

Szkolenie
dedykowane
dla Twojego
zespołu

Cena szkolenia 3000 PLN (netto)

Standardy JSystems

  1. Wszyscy nasi trenerzy muszą być praktykami i osiągać średnią z ankiet minimum 4.75 na 5. Nie ma wśród nas trenerów-teoretyków. Każdy trener JSystems ma bogate doświadczenie komercyjne w zakresie tematów z których prowadzi szkolenia.
  2. Wszystkie szkolenia mają format warszatowy. Każde zagadnienie teoretyczne jest poparte rzędem warsztatów w ściśle określonym formacie.
  3. Terminy gwarantowane na 100%. Jeśli jakiś termin jest oznaczony jako gwarantowany, oznacza to że odbędzie się nawet jeśli część grupy wycofa się z udziału. Ryzyko ponosimy my jako organizator.
  4. Do każdego szkolenia które wymaga jakiegokolwiek oprogramowania dostarczamy skonfigurowane, gotowe hosty w chmurze. Dzięki temu uczestnik nie musi nic instalować na swoim komputerze (i bić się z blokadami korporacyjnymi). Połączenie następuje przez zdalny pulpit lub SSH - w zależności od szkolenia.
Zapisz się
Program szkolenia
  1. Wprowadzenie do wzorców projektowych
    • Czym są wzorce projektowe?
    • Historia i znaczenie wzorców GoF
    • Kiedy i dlaczego stosować wzorce projektowe?
  2. Podział wzorców projektowych GoF
    • Wzorce kreacyjne
    • Wzorce strukturalne
    • Wzorce behawioralne
  3. Wzorce kreacyjne wraz z implementacją w Javie
    • Singleton: Zapewnienie istnienia jednej instancji klasy
    • Factory Method: Tworzenie obiektów bez określania ich konkretnych klas
    • Abstract Factory: Grupowanie powiązanych fabryk obiektów
    • Builder / Fluent API: Ułatwienie konstrukcji złożonych obiektów
    • Test Data Builder: Budowanie i reużywanie danych testowych
    • Prototype: Tworzenie kopii obiektów
    • Object Pool: Zarządzanie zestawem zainicjowanych obiektów, które mogą być ponownie używane, zamiast tworzyć je od nowa
    • I inne
  4. Wzorce strukturalne wraz z implementacją w Javie
    • Adapter: Dopasowanie jednej klasy do innego interfejsu
    • Decorator: Dynamiczne rozszerzanie funkcji obiektów
    • Facade: Uproszczenie skomplikowanych interfejsów
    • Proxy: Zastępowanie obiektu innym w celu optymalizacji
    • Bridge: Oddzielenie abstrakcji od jej implementacji
    • Composite: Umożliwianie klientom traktowanie obiektów indywidualnych oraz grup obiektów w sposób jednolity (drzewiasta struktura)
    • Flyweight: Minimalizowanie zużycia pamięci poprzez współdzielenie obiektów o tym samym stanie wewnętrznym i efektywne zarządzanie dużą liczbą małych obiektów
    • I inne
  5. Wzorce behawioralne wraz z implementacją w Javie
    • Observer: Reagowanie na zmiany stanu obiektu
    • Strategy: Dynamiczna zmiana algorytmów w trakcie działania
    • Command: Oddzielenie żądania od obiektu wykonującego
    • Chain of Responsibility: Przekazywanie żądania przez łańcuch przetwarzania
    • Template Method: Definiowanie szkieletu algorytmu w klasie bazowej
    • State: Zmiana zachowania obiektu na podstawie jego stanu
    • Iterator: Udostępnianie sekwencyjnego dostępu do elementów kolekcji bez ujawniania jej wewnętrznej reprezentacji
    • Mediator: Redukowanie bezpośrednie zależności między obiektami, wprowadzając pośrednika, który koordynuje komunikację między nimi
    • Memento: Zapisywanie i przywracanie wcześniejszych stanów obiektów bez naruszania ich hermetyzacji
    • Visitor: Oddzielanie algorytm od struktury obiektów
    • Dispatcher: Rozdzielanie zadań, zdarzeń lub żądań do odpowiednich handlerów lub procesów
    • I inne
  6. Przykłady zastosowania wzorców w popularnych frameworkach i bibliotekach
    • Wzorce projektowe w Spring, Spring Boot, Spring Security, Spring Batch, Spring AOP
    • Wzorce projektowe w JPA/Hibernate/JDBC
    • Wzorce projektowe w Java I/O
    • Wzorce projektowe w Java EE/EJB/Servlet API
    • Wzorce projektowe w Lombok
    • Wzorce projektowe w JavaFX
    • Wzorce projektowe w CQRS
    • Wzorce projektowe w REST
    • Wzorce projektowe w JUnit/TestNG
  7. Antywzorce (Antipatterns) i zapachy kodu (code smells)
    • Definicja antywzorca
    • Definicja zapachu kodu
    • Przykłady powszechnych antywzorców i zapachów kodu
      • Long Method
      • Large Class
      • Duplicated Code
      • Long Parameter List
      • Feature Envy
      • Data Clumps
      • Primitive Obsession
      • Switch Statements
      • Comments
      • Lazy Class
      • Speculative Generality
      • Temporary Field
      • Message Chains
      • Middle Man
      • Inappropriate Intimacy
      • Refused Bequest
      • Data Class
      • God Class / Object / Method
      • Spaghetti Code
      • Golden Hammer
      • Poltergeist
      • Premature Optimization
      • Anemic Domain Model
      • Big Ball of Mud
      • Shotgun Surgery
      • Lava Flow
      • Magic Numbers
      • Copy-Paste Programming
      • Circular Dependency
      • Overengineering
      • Stovepipe System
      • Dead Code
      • Hardcoding
      • Inner-Platform Effect
      • Swiss Army Knife
      • Leaky Abstraction
      • I inne
  8. Warsztaty praktyczne
    • Ćwiczenia z implementacji wzorców projektowych w małych projektach
    • Refaktoryzacja istniejącego kodu z antywzorcami i zapachami kodu przy użyciu wzorców GoF
    • Rozwiązywanie typowych problemów projektowych za pomocą wzorców
    • Jak wybierać odpowiednie wzorce do rozwiązywania problemów?
    • Jak rozpoznać i unikać antywzorców i zapachów kodu
    • Przykłady z życia codziennego w projektach
    • Najlepsze praktyki

Opis szkolenia

Szkolenie odbywa się na żywo z udziałem trenera. Nie jest to forma kursu video!

Na szkoleniu zdobędziesz wiedzę i umiejętności niezbędne do efektywnego stosowania wzorców projektowych zdefiniowanych przez "Gang of Four" (GoF). Nauczysz się, jak implementować najważniejsze wzorce w Javie, a także zobaczysz, jak są one wykorzystywane w popularnych projektach, frameworkach (takich jak Spring) i bibliotekach. Szkolenie kładzie nacisk na praktykę - uczestnicy będą mieli okazję przećwiczyć implementację wzorców na rzeczywistych przykładach.

Dodatkowo nauczysz się rozpoznawać, unikać i refaktoryzować antywzorce (antipatterns) oraz zapachy kodu (code smells) oraz identyfikować najczęstsze problemy w architekturze oprogramowania oraz kodzie i skutecznie je naprawiać. Poznasz praktyczne techniki poprawy jakości kodu, co pozwoli ci tworzyć bardziej czytelne, elastyczne i łatwiejsze do utrzymania rozwiązania.



Prowadzący szkolenie: Maciej Górnicki



Programista i projektant z 13-letnim doświadczeniem, specjalizujący się w Javie i full-stack development. Pracował nad dużymi projektami korporacyjnymi w sektorach fintech oraz insurtech, zdobywając bogate doświadczenie w tworzeniu systemów rozproszonych oraz integracji opartej o API i zdarzenia.

Jako specjalista w dziedzinie Java i architektury oprogramowania, zajmował się również strategicznym rozwojem kompetencji technicznych w organizacji, będąc aktywnym rekruterem technicznym, trenerem oraz mentorem. Pasjonat współpracy z ekspertami domenowymi i klientami, z zamiłowaniem do prostoty i czytelności, z zainteresowaniem Domain Driven Design (DDD) oraz innymi podejściami inżynierii oprogramowania zorientowanymi na domenę biznesową.


Stanowisko robocze


Do tego szkolenia każdy uczestnik otrzymuje dostęp do indywidualnej wirtualnej maszyny w chmurze. Ma ona zainstalowane i skonfigurowane wszystko co potrzebne do realizacji szkolenia. Maszyna będzie dostępna przez cały okres szkolenia.
Terminy gwarantowane

Gdy na jakiś termin zgłosi się minimalna liczba osób, termin oznaczamy jako gwarantowany.

Jeśli jakiś termin oznaczony jest jako gwarantowany to oznacza to, że na 100% się odbędzie we wskazanym czasie i miejscu.

Nawet gdyby część takiej grupy zrezygnowała lub przeniosła się na inny termin, raz ustalony termin gwarantowany takim pozostaje. Ewentualne ryzyko ponosimy my jako organizator.

Przejdź do terminów tego szkolenia

Szkolenia online Szkolenia online odbywają się na żywo z udziałem trenera. Uczestniczy łączą się na szkolenie za pomocą platfomy ZOOM. Informacje o wymaganym niezbędnym oprogramowaniu oraz informacje organizacyjne uczestnicy otrzymują na 7 dni przed datą rozpoczęcia szkolenia.
Inne szkolenia tej kategorii Sprawdź pozostałe    szkolenia Java!

Sprawdź, co mówią o nas ci, którzy nam zaufali

  • 5.0/5

    Spring Cloud

    11-10-2024 Ciekawy sposób tłumaczenia kolejnych, powiązanych ze sobą zagadnień przez wykładowcę, dzięki czemu jest łatwiej zrozumieć co z czego wynika. Prowadzący to osoba z praktycznym doświadczeniem, która przywiązuje dużą wagę do jak najlepszego przekazania swojej wiedzy. Paweł Dziedzic, SoftSystem Sp. z o.o.
  • 5.0/5

    Spring Boot i Docker + wprowadzenie do mikroserwisów

    27-09-2024 Polecam! Mateusz Jusiak, Edubroker Sp. z o.o.
  • 5.0/5

    Spring Boot i Docker + wprowadzenie do mikroserwisów

    27-09-2024 Polecam każdemu szkolenie :)!, Bardzo fajnie prowadzone zajęcia, łatwo wszystko przyswoić. Widać że prowadzący zna się na rzeczy i co chyba najważniejsze... potrafi wyjaśnić problem na konkretnych przykładach!. Pozdrawiam!. Zygmunt Postawa, PKP Intercity S.A.
  • 5.0/5

    Clean Code i dobre praktyki programowania obiektowego w Javie

    28-06-2024 Przystępnie podana porcja wiedzy, która z pewnością przyda się w codziennej praktyce deweloperskiej. Dużo trafnych przykładów, znalazło się też nieco czasu na indywidualne ćwiczenia praktyczne. Dodatkowym plusem było zaangażowanie prowadzącego i możliwość swobodnej dyskusji nad proponowanymi rozwiązaniami. Kamil Ćwintal, Ośrodek Przetwarzania Informacji – Państwowy Instytut Badawczy
  • 5.0/5

    Clean Code i dobre praktyki programowania obiektowego w Javie

    20-06-2024 Dobrze przygotowany wykładowca, merytoryczne treści, serdecznie polecam :) Radosław Głowacki, Idemia Poland R&D
  • 5.0/5

    Spring Boot i Docker + wprowadzenie do mikroserwisów

    26-04-2024 Pan Marcin prowadzi szkolenie w zorganizowany sposób. Wiedza jest przekazywana w przystępny sposób, całe szkolenie jest w formie Live Coding - co mi się bardzo podobało. Polecam Karol Kistela, BPRobotics sp. z o.o.
  • 5.0/5

    Spring Boot i Docker + wprowadzenie do mikroserwisów

    26-04-2024 Bardzo polecam to szkolenie! Profesjonalne podejście prowadzącego oraz bogaty, praktyczny materiał sprawiły, że czas spędzony na kursie był niezwykle wartościowy. Wszystko było doskonale zorganizowane, a zdobyta wiedza z pewnością przyczyni się do mojego rozwoju zawodowego. Prowadzący był bardzo kompetentny i chętnie dzielił się swoją wiedzą, odpowiadając na wszystkie pytania. To była świetna inwestycja w moje umiejętności i zdecydowanie polecam ten kurs każdemu, kto chce podnieść swoje kwalifikacje! Piotr Rostek, PZU SA/PZU ŻYCIE SA
  • 5.0/5

    Spring Boot i Docker + wprowadzenie do mikroserwisów

    26-04-2024 Spring Boot i Docker + wprowadzenie do mikroserwisów - świetne szkolenie, duża dawka wiedzy przekazana przez Marcina pozwoliła mi zrobić spory krok do przodu w rozumieniu wszystkich procesów oraz efektywniejszego programowania. Świetne wytłumaczenie od A do Z - od momentu tworzenia samego projektu, po jego zakończenie. Sebastian Stawiarski, ORNSSON SOLUTIONS Sp. z o.o.
  • 5.0/5

    Spring WebFlux: Programowanie reaktywne w Javie z wykorzystaniem frameworka Spring

    28-03-2024 Bardzo dobre wejście w świat reaktywnej javy, asynchroniczności i wielowątkowości Jakub Musialik, Ornsson Solutions Sp. z o.o.
  • 5.0/5

    Spring WebFlux: Programowanie reaktywne w Javie z wykorzystaniem frameworka Spring

    28-03-2024 Marcin świetnie prowadzi zajęcia, chętnie udziela odpowiedzi na nurtujące nas pytania. Przemysław Czerw, Ornsson Solutions Sp. z o.o.
  • 4.9/5

    Spring Boot - budowanie aplikacji REST

    22-03-2024 jestem zadowolony Mateusz Bernaczyk, UNIQA Towarzystwo Ubezpieczeń S.A.
  • 5.0/5

    Spring Boot - budowanie aplikacji REST

    22-03-2024 JSystems świetna robota. Merytoryczni prowadzący co ważne z żyłką pedagogiczną :) Tak trzymać. Emil Dmowski, UNIQA Towarzystwo Ubezpieczeń S.A.
  • 5.0/5

    Spring Boot - budowanie aplikacji REST

    22-03-2024 Tak powinny być prowadzone wszystkie szkolenia Marek Kuźniar, UNIQA Towarzystwo Ubezpieczeń S.A.
  • 4.81/5

    Spring Boot - budowanie aplikacji REST

    15-03-2024 Gorąco polecam szkolenie - jeżeli zaczynasz kurs z minimalną widzą o Spring i REST to po zakończeniu szkolenia nie będziesz jeszcze mistrzem ale... dostaniesz solidny zastrzyk wiedzy i praktyki który pomoże zbudować Ci fundamenty Spring / REST. Aleksander Smyk, UNIQA Towarzystwo Ubezpieczeń S.A.
  • 4.81/5

    Spring Boot - budowanie aplikacji REST

    15-03-2024 Dobre szkolenie. Grzegorz Babicki, UNIQA Towarzystwo Ubezpieczeń SA
  • 5.0/5

    Tworzenie aplikacji w Javie z użyciem Spring Framework

    22-12-2023 Po raz kolejny odbyłem szkolenie prowadzone przez Marcina. Serdecznie chciałbym podziękować za rozszerzenie/uzupełnienie wiedzy na temat Springa :) Grzegorz Ciosek, Asseco Poland S.A.
  • 4.81/5

    Clean Code i dobre praktyki programowania obiektowego w Javie

    15-12-2023 Fajnie i ciekawie Leila Miniailo, GP Strategies Poland Sp. z o.o.
  • 5.0/5

    Clean Code i dobre praktyki programowania obiektowego w Javie

    01-12-2023 Prowadzący szkolenie, Marcin Chrost, podczas szkolenia odpowiada również na dodatkowe pytania wykraczające poza zakres materiału szkoleniowego. Oczywiście pytania krótkie, a odpowiedzi zwięzłe i konkretne, żeby nie zakłócić głównego przebiegu szkolenia. Całość szkolenia zwięzła i konkretna, z duża ilością przykładów i dużą ilością przekazaniej wiedzy. Paweł Zamorski, SoftSystem Sp. z o.o.
  • 5.0/5

    Clean Code i dobre praktyki programowania obiektowego w Javie

    01-12-2023 Zdecydowanie polecam udzial w szkoleniu: "Clean Code i dobre praktyki programowania obiektowego w Javie". Rafał Kopiec, SoftSystem Sp. z o.o.
  • 4.9/5

    Clean Code i dobre praktyki programowania obiektowego w Javie

    01-12-2023 Szkolenie poprowadzone z werwą i ciekawie Zofia Kochańska, SoftSystem Sp. z o.o.
  • 5.0/5

    Zaawansowana Java

    24-11-2023 Wyśmienite szkolenie, ogromna wiedza prowadzącego oraz materiał przekazywany podczas szkoleniu. Szkolenie odbywało się na zasadach przykład z teorią, ćwiczenia, a następnie rozwiązywanie tych ćwiczeń wspólnie. Dzięki takiemu stylowi, podczas ćwiczeń można się dużo dowiedzieć :) Polecam prowadzącego oraz szkolenie. Konrad Aleksander Wesołowski, Axians IT Solutions Poland Sp. z o.o.
  • 4.83/5

    Programowanie w języku Java

    27-10-2023 Super szkolenie! Forma warsztatowa na plus - dzięki niej wyniosłam bardzo wiele praktycznej wiedzy. Super trener otwarty na pomoc i poszerzenie przykładowych zadań. :) Monika Kondracka, Redge Technologies Sp. z o.o.
  • 5.0/5

    Spring Boot - budowanie aplikacji REST

    20-10-2023 Polecam trenera. Stanisław Feder, Powszechny Zakład Ubezpieczeń na Życie SA
  • 5.0/5

    Spring Boot - budowanie aplikacji REST

    20-10-2023 Polecam to szkolenie - spora dawka wiedzy o Spring Boot, bardzo dobry Trener, świetnie przygotowane materiały oraz zaplecze techniczne. Jan Kowaczek, Powszechny Zakład Ubezpieczeń na Życie SA
  • 5.0/5

    Spring Boot - budowanie aplikacji REST

    20-10-2023 Dziekuje bardzo! Beata Kaźmierczak, Centralny Ośrodek Informatyki
  • 5.0/5

    Spring Cloud

    07-07-2023 ok Kamil Słojkowski, Powszechna Kasa Oszczędności Bank Polski SA
  • 5.0/5

    Zaawansowana Java

    30-06-2023 Bardzo dobre szkolenie, spory zakres tematyczny i co mi się szczególnie podobało dużo kodu z przykładami i ćwiczeniami rozwiązywanymi w IDE na bieżąco w trakcie szkolenia. Mimo programowania na co dzień w Javie, sporo się dowiedziałem i uzupełniłem braki w mojej wiedzy. Po szkoleniu na pewno łatwiej i przyjemniej będzie się tworzyć kod w Javie. Polecam prowadzącego. Maciej Pachocki, Bank Gospodarstwa Krajowego
  • 5.0/5

    Zaawansowana Java

    30-06-2023 Polecam - konkretny, profesjonalny. Zbigniew Szajna, Aplikacje Krytyczne Sp. z o.o.
  • 5.0/5

    Zaawansowana Java

    23-06-2023 Polecam trenera, ma bardzo dużą wiedzę na temat javy, dlatego wykraczającą poza standardowe "klepanie crudów" Sebastian Augustyniak, Edubroker Sp. z o.o.
  • 4.72/5

    Zaawansowana Java

    23-06-2023 Merytoryczne i praktyczne szkolenie pozwalające zrozumieć działanie wybranych mechanizmów Javy "od środka". Polecam. Krzysztof Krawczyk, Edubroker Sp. z o.o.

Trenerzy kategorii Java

Marcin Dzierżak
Dariusz Mydlarz
Łukasz Tomczyk
Michał Gellert
Maciej Górnicki
Marcin Chrost
Michał Podbielski
Zapisz się

Masz jakieś pytania? Skontaktuj się z nami!

Odpowiadamy na telefony i maile w godzinach 9:00-17:00 od poniedziałku do piątku.

Telefon 22 299 53 69
Napisz do nas

Potrzebujesz więcej informacji?

Wiadomość wysłana

Przyjęliśmy Twoją wiadomość i skontaktujemy się z Tobą w tej sprawie

Klikając OK wrócisz do formularza

Nasza strona korzysta z plików cookie. Możesz zmienić zasady ich używania lub zablokować pliki cookie w ustawieniach przeglądarki. Więcej informacji można znaleźć w Polityce prywatności. Kontynuując korzystanie ze strony, wyrażasz zgodę na używanie plików cookie.