Objektově orientované programování

Krátký úvod

Objektově orientované programování (OOP) je způsob přístupu k programování (paradigma), který je zaměřen na modelování všeho z reálného světa. Programový kód tedy není už jen obyčejná posloupnost mnohdy nic neříkajícího kódu. Kód je rozdělen do určitých logických celků, které reprezentují právě zmiňované objekty reálného světa.

Objektem reálného světa může být cokoliv, na co jen pomyslíme… zvíře, věc, město, barva, proces, apod. Například tedy Člověk, Kniha, Rezervace pokoje v hotelu, Objednávka v eshopu, Vstupenka na zápas a tak dále. Zkrátka a jasně, na cokoliv pomyslíme, může být tím objektem reálného světa, který je možno naprogramovat.

Anatomie objektů

Každý objekt mívá dvě základní části: vlastnosti a chování.

Vlastnosti si můžeme vysvětlit jako určitou charakteristiku objektu, která je sním spojena. Zkusme se zamyslet, jaké vlastnosti by mohl mít objekt Člověk? Tak třeba tyto:

  • Jméno
  • Příjmení
  • Výška
  • Váha
  • Barva vlasů
  • Barva očí
  • Barva pleti
  • Počet zubů

Možnosti jsou v podstatě omezeny jen naší fantazií. Samozřejmě, že při navrhování objektů nepoužíváme všechny vlastnosti, které nás napadnou, to by asi nedopadlo úplně šťastně. Používáme takové vlastnosti, s nimiž potřebujeme v rámci našeho programu pracovat. Vlastnosti si můžeme kdykoliv přidávat i ubírat, záleží na našich potřebách.

Chování je oproti vlastnostem taková dynamika… je to něco v pohybu. Chování umožňuje objektům reagovat, komunikovat a něco dělat. Příklady pro chování naší třídy Člověk by mohly být např. následující:

  • Pozdrav
  • Jdi do práce
  • Jeď na kole
  • Plavej
  • Skákej
  • Směj se

Teorie a kód

Rychlý úvod kolem OOP bychom měli za sebou. Nyní se zaměřme na to, jak by se tyto znalosti daly aplikovat do kódu jazyka C# (a nejen do něj). Než v programovacím jazyce vznikne objekt, je napřed nutné nějakým způsobem naplánovat (namodelovat), jaké bude mít vlastnosti a chování.

Toto namodelování se uskutečňuje prostřednictvím tzv. třídy. Třída je takový základní stavební blok v OOP. Vytváří se pomocí klíčového slovíčka class, za nímž následují složené závorky. Vše, co je uvnitř těchto složených závorek, je součástí třídy.

C#
class Clovek 
{

}

Uvnitř třídy modelujeme podobu objektů, které by měly v budoucnu vznikat. Vlastnosti se mohou v programování realizovat pomocí proměnných, zatímco chování pomocí metod. To vše tvoříme vždy uvnitř třídy.

V další lekci se podíváme na vytváření tříd a objektů.