<img height="1" width="1" style="display: none;" src="https://www.facebook.com/tr?id=990894967609194&ev=PageView&noscript=1" alt="" />
devBites
~1h:50min

Programowanie Obiektowe: Fundamenty

junior / midPolimorfizmDekompozycja

Podróż po świecie programowania obiektowego często kończy się w chwili opanowania składni. A to zaledwie początek tej przygody!

Może pomyślisz: "Programowanie obiektowe w godzinę? Tyle to trwał jeden wykład!" Masz rację. Ale w tym kursie przedstawię Ci elementy, które są domknięciem tej podróży: esencję programowania obiektowego. Esencję często pomijaną w tradycyjnej edukacji. Esencję, która odmieniła moje podejście i pozwoliła unikać typowych błędów.

Chociaż przykłady będą w Javie, z łatwością przekształcisz te idee na inny język obiektowy. Kod w tym kursie został oczyszczony z elementów baz danych, interfejsów użytkownika czy testów jednostkowych. Dlaczego? By skoncentrować się na tym, co w tym kursie kluczowe: prawdziwym programowaniu obiektowym, które nie kończy się "jak zwykle".

  • Kuba Pilimon

Czego nauczysz się w tym kursie

  • różnic pomiędzy dekompozycją algorytmiczną a obiektową
  • czym jest enkapsulacja i dlaczego to nie tylko nieużywanie get/set
  • szukać stabilnych abstrakcji, które pozwolą Ci być lepszym projektanem
  • w jaki sposób polimorfizm pozwala na utrzymanie stabilnej siatki obiektów
  • podstaw modularyzacji, niezbędnej w "prawdziwych" projektach
  • szeregu herustyk modelowania obiektowego

Wymagania

  • Podstawy dowolnego języka obiektowego (Java/C++/C#/PHP lub inny)...
  • ...czyli: wiesz czym jest obiekt i klasa oraz znasz podstawowe słowa kluczowe i składnia nie stanowi dla Ciebie dużego problemu
  • [przykłady w kursie będą w języku Java, ale znajomość dowolnego innego języka wystarczy - słowa kluczowe są praktycznie takie same]

Agenda

  • 1Po co dzielić na obiekty?

  • 2Dekompozycja algorytmiczna

  • 3Zła dekompozycja obiektowa

  • 4Dekompozycja obiektowa

  • 5Szukanie poprawnych abstrakcji

  • 6Problemy złej abstrakcji

  • 7Enkapsulacja - danych, zachowań i algorytmów

  • 8Information expert

  • 9Polimorfizm i różne jego rodzaje

  • 10Rozszerzalność

  • 11Kiedy nie dzielić na obiekty?

  • 12Wstęp do modularyzacji

Opinie