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 za uczestnika

Opinie uczestników (5)

Szkolenia Powiązane

Combined C/C++, JAVA and Web Application Security

28 godzin

Advanced Java Security

21 godzin

Combined JAVA, PHP and Web Application Security

28 godzin

Standard Java Security

14 godzin

Java and Web Application Security

21 godzin

Advanced Java, JEE and Web Application Security

28 godzin

Powiązane Kategorie