Plan Szkolenia

Potrzeba programowania obiektowego

  • Próba odzwierciedlenia realnego świata w programowaniu

  • Pocztątki i ewolucja programowania obiektowego

  • Programowanie obiektowe w aspekcie reguł KISS i DRY

Klasy i obiekty

  • Idee i byty w filozofii Platona

  • Rola klas

  • Realizacja klas za pomoc obiektów

  • Klasy, właściwości i metody statyczne

Konwencje nazewnictwa i kodowania

  • Nazewnictwo klas

  • Nazewnictwo właściwości i metod

  • Nazewnictwo pakietów i folderów

  • Pozostałe konwencje

Struktura klasy

  • Właściwości/pola jako opis stanu obiektu

  • Akcesory

  • Metody jako realizacja funkcjonalności

Modelowanie i graficzna reprezentacja klas

  • Analiza wymagań
  • Modelowanie struktury klas i relacji
  • Opisywanie obiektów biznesowych
  • Diagramy EER
  • Diagram klas UML

Paradygmaty programowania obiektowego

  • Pojęcie paradygmatu

  • Hermetyzacja

  • Abstrakcja

  • Dziedziczenie

  • Polimorfizm

Projektowanie i realizacja warstwy abstrakcji

  • Klasy abstrakcyjne

  • Interfejsy

  • Cechy -Traits

  • Klazy zagnieżdżone

  • Klasy generyczne

Tworzenie obiektów

  • Sposoby tworzenia obiektów

  • Rola konstruktora

  • Wzorzec Fabryki

Zależności między klasami

  • Agregacja

  • Kompozycja

  • Rozdział zależności - Decoupling

  • Wstrzykiwanie zależności, kontenery DIC

  • Wzorzec Mediatora

Organizacja kodu

  • Projektowanie kodu wielokrotnego użycia

  • Struktura folderów

  • Przestrzenie nazw, pakiety, moduły

Programowanie obiektowe a wydajność

  • Rezerwacja pamięci dla obiektów

  • Garbage Collector

  • Jawne usuwanie obiektów, destruktory

  • Praca z referencjami

Mechanizm refleksji

  • Obszar zastosować refleksji

  • Pozyskiwanie informacji o klasach i obiektach

  • Znaczenie refleksji w tworzeniu dokumentacji i testowaniu oprogramowania

Obsługa błędów

  • Możliwe modele obsługi błędów

  • Obiektowy model obsługi błędów

  • Rola wyjątków i klasa Exception, rzucanie i przechwytywanie wyjtków

  • Blok try-catch-final, zagnieżdżanie bloku

Antywzorce programowania obiektowego

  • Nadmierna odpowiedzialność klas, wzorzec Delegacji

  • Silne zależności

  • Singleton i potencjalne problemy

  • Anemic Domain Model

  • Pozostałe antywzorce

Wymagania

Uczestnicy szkolenia powinni posiadać podstawową wiedzę z zakresu programowania.

 21 godzin

Liczba uczestników


cena netto za uczestnika

Opinie uczestników (2)

Propozycje terminów

Powiązane Kategorie