Efektywne programowanie w Javie oraz zaawansowane techniki OO i wzorce

Kod: craft-patterns-Java Pro
Kategoria: Wzorce projektowe
Forma: 50% wykłady / 50% warsztaty
Czas trwania: 3 dni
Grupa docelowa: developerzy
Logistyka: W siedzibie klienta lub w innym dowolnym miejscu.
Data i dokładny zakres do ustalenia podczas analizy przed-szkoleniowej.

Szkolenie zostało opracowane z myślą o uczestnikach pragnących poszerzyć swoje kompetencje programistyczne w pragmatycznym kierunku.

Materiał został dobrany na podstawie wieloletnich doświadczeń programistów biorących udział w wielu projektach - nie jest to rodzaj bezproduktywnych łamigłówek znanych z niektórych testów certyfikacyjnych.

Zakres szkolenia został rozszerzony o zaawansowane zagadnienia Object Oriented, testowania i aspekty architektury aplikacji.

Wyróżniki szkolenia

Podczas zajęć możesz oczekiwać szczególnych akcentów położonych na poniższe aspekty:

  • Realne problemy i pragmatyczne rozwiązania
  • Software Craftsmanship
  • Zaawansowane wzorce i techniki obiektowe

Program Szkolenia

Program jest ramą w jakiej możemy się poruszać merytorycznie - program dla konkretnego szkolenia dedykowanego ustalamy z grupą na podstawie analizy przed-szkoleniowej.

  1. Elementy języka Java
    1. Adnotacje
      1. Tworzenie i wykrywanie istnienia własnych adnotacji
      2. Techniki budowania frameworków opartych na własnych adnotacjach
    2. Typy wyliczeniowe
      1. Typy wyliczeniowe jako pełnoprawne obiekty
      2. Redukcja złożoności kodu
      3. Zamiast instrukcji switch
      4. Rozbudowa do wzorca Visitor zamiast instrukcji switch
  2. Typowe potrzaski podczas programowania w Javie
    1. Wycieki pamięci - sposoby unikania
      1. Mapy
      2. Kolekcje
      3. Singletony
    2. Dokładność obliczeniowa - dobór typów
      1. Hermetyzacja w Value Objects
    3. Klonowanie
    4. Poprawna implementacja equals i hashcode (również w kontekście JPA)
      1. Co to znaczy, że obiekty tożsame
  3. Efektywne wykorzystanie klas Biblioteki Standardowej
  4. Współbieżność
    1. Planowe wykonywanie wątków przez Executor
    2. Kolekcje bezpieczne ze względu na wątki
    3. Pułapki współbieżności
  5. Obsługa wyjątków
    1. Style i konwencje
      1. Sytuacja niepoprawna to nie wyjątek
      2. Poprawne wykorzystanie wyjątków weryfikowalnych i nieweryfikowalnych
    2. Typowe błędy podczas obsługi wyjątków
      1. Obsługa i propagacja
      2. Dławienie wyjątków
      3. Problemy z wydajnością
      4. Czy zbierać stacktrace
    3. Przydatne wyjątki standardowe
  6. Efektywne wykorzystanie Object Oriented
    1. Pułapki dziedziczenia
      1. Zamknięcie kodu na rozbudowę
      2. Zastępowania dziedziczenia kompozycją – praktyczne zalety zmiany podejścia
        1. Dziedziczenie nie nadaje się do modelowania ról
        2. Liskov Substitution Principle
        3. Wzorzec Party
        4. Wzorzec Role Object i Extension Object
    2. Najlepsze praktyki
      1. Klasy abstrakcyjne czy interfejsy
    3. Code smell
  7. Zestaw kilkunastu wzorców implementacyjnych
  8. Przegląd efektywnych bibliotek Apache i Google
  9. Techniki programistyczne
    1. Praktyczne elementy GRASP
    2. Praktyczne wykorzystanie SOLID
      1. Kohezja klas
        1. Jak ją osiągnąć
        2. Jak wykrywać zapachy kodu
      2. Otwartość na rozbudowę
        1. Wzorzec Strategii
        2. 3 rodzaje logiki: stabilna, domknięcia, wybór domknięć
      3. Kiedy dziedziczenie nie ma sensu
      4. Zakres interfejsów
      5. Odpowiedni poziom abstrakcji
    3. Dążenie do kodu o czytelności zbliżonej do prozy
      1. Technika podmiot.orzecznie(dopełnienie, przydawka)
      2. Technika modelowania niezmienników
      3. Technika określania granicy klasy na podstawie analizy Use Case
    4. Projektowanie otwarte na testy (testability)
  10. Testowanie automatyczne
    1. Rodzaje testów
    2. Narzędzia
    3. Techniki testów jednostkowych (fake, stub, mock)
    4. Biblioteka Mockito


Pobierz program w formacie PDF

Trenerzy

Poznaj ekspertów, którzy mogą poprowadzić Twoje szkolenie.

Materiały związane ze szkoleniem

Idea renesansowej pracowni - Bottegi zakłada nieustanną pracę jej członków i dzielenie się jej wynikami.

Zapytaj o szkolenie

Imię i nazwisko:
Firma:
E-mail/Nr tel:
Temat:
Wiadomość:

Jeżeli preferujesz osobisty kontakt to zawsze możesz zadzwonić.

Iwona Sobótka

Koordynatorka szkoleń