V tomto článku uvedeme Objektově Orientované Programování (OOP) a třídy. Třídy představují úplný základní prvek objektově orientovaného programování i pro jiné programovací jazyky, které podporují OOP.
V první řadě potřebujeme přesně vědět, to jsou objekty. Pochopení objektů je klíčový koncept v pochopení objektově orientovaného programování. Chtěl bych teď, abyste se poohlédli po místnosti, ve které aktuálně sedíte nebo po krásné zahradě, ve které akorát jste s notebookem na kolenou. Poohlédli jste se? Pokud ano, určitě jste našli mnoho příkladů objektů. Například akorát sedím na židli (objekt) a koukám do obrovského 38 palcového 4k monitoru, píšu na klávesnici do počítače, přes okno vidím hory. Všechno toto jsou příklady objektů v reálném životě, který žijeme.
Objekt z reálného světa má dvě charakteristiky:
Stav židle, například může být její barva, to že je z kůže a to, že má ty super kolečka, kterými se dokáže přesouvat z místa na místo, aniž aby hromžili sousedé pode mnou. Stav monitoru může být jeho zmíněné rozlišení, svítivost, nebo např. periferie – například. USBC, HDMI apod.
Chování počítače může například. být:
Softwarové objekty, které jsou základním stavebním prvokem OOP mají velmi podobné objektům z reálného světa, neboť také sestávají ze stavu a chování. Softwarové objekty mají stav, který je reprezentován nastavením svých proměnných (v OOP je nazýváme atribyty). Chování softwarových objektů je reprezentováno pomocí funkcí a procedur, které patří k objektu (v OOP je nazýváme metody)
Třída je formička nebo recept, který říká, jak se mají vytvořit objekty. Vezměte si takovou automobilku, která vyrábí automobil například. Škoda Octavia. V automobilce mají recept i formičky – know-how, jak vyrobit Octavii. Recept, jak vyrobit Octavii si umíme představit jako třídu. To, že dána konkrétní Octavia schází z výrobního pásu a je připravena, na své první testovací okruh po areálu automobilky, to je objekt. Objekt je konkrétní instance třídy.
Máte rádi sušenku BeBe? Tam je situace naprosto stejná. Recept, jak vyrobit tento sušenek je v Opdvii a dá se považovat za třídu. Kamion Např. 2000 konkrétních sušenek BeBe představuje 2000 konkrétních objektů, které byly vyrobeny na základě toho receptu.
V procedurálním programování jsme vytvářeli struktury, které se „podobali“ na třídy. Mohli byste si tedy pomyslet, jaký má pro nás význam vytváření tříd? Nestačí nám vytvářet struktury?
Třídy se někdy nazývají také „struktury na stereoidech“, protože k původní – čistě datové funkcionalitě struktur se přidal i výkonný kód, který je obsluhuje. A tím se třídy staly nezávislým autonomním uceleným celkem systému, který má v systému konkrétní odpovědnost za konkrétní úlohu.