4 věci, které musíš vědět o objektově orientovaném programování (OOP)

Chceš být jednou profi programátorem? Tím pádem se na kariérní cestě potkáš s tzv. objektovým programováním. Prozradíme ti, proč je důležité mu věnovat pozornost, v čem je nenahraditelné nebo ve kterých jazycích se používá.
18.3.2024 | 4 minuty k přečtení | Sdílej na:

Co je a jak funguje objektové programování

Objektově orientované programování (zkráceně OOP) je způsob programování, při kterém specialista nepíše sekvenční kód provádějící úkoly krok za krokem, ale pohlíží na výsledný program jako na množinu několika objektů. Tyto objekty mají různé vlastnosti a navzájem se mezi sebou ovlivňují a komunikují.

Zjednodušeně řečeno: místo aby programátor psal kód shora dolů, pracuje s tzv. třídami a objekty, o nichž ti více prozradíme o pár řádků níže.

Přijde ti to na první pohled komplikované? Pojďme si ukázat malý příklad.

Představ si konkrétní objekt, třeba židli. Tato židle má několik vlastností (váhu, výšku, barvu) a společně s dalšími objekty (např. stůl, skříň, postel) patří do třídy nábytek. Třída tedy tvoří pomyslnou šablonu, od níž se následně odvíjí jednotlivé objekty s různými vlastnostmi.

Zmíněné třídy pak tvoří hlavní pilíř objektového programování, protože právě na nich je postavená struktura kódu programu.

Na obrázku výše vidíš krátkou ukázku objektového programování v jazyce Python. Kód definuje třídu Car (auto), která má vlastnosti jako značka (brand), model, rok výroby (year) a barva (color).

K čemu se OOP využívá a jaké jsou jeho výhody

Objektové programování má celou řadu využití, především umožňuje vytvářet komplexní systémy a aplikace. Ty pak programátor dále rozšiřuje dle potřeby, a to právě díky práci s třídami a objekty, které představují prvky reálného světa.

Běžně se OOP využívá i při tvorbě počítačových her, mobilních aplikací nebo třeba operačních systémů. Je ideální pro větší projekty, které se neustále rozvíjí a vylepšují.

Mezi největší výhody objektově orientovaného programování patří:

  • Opakované použití kódu – jakmile jednou vytvoříš kód, nemusíš ho podruhé psát znovu, ale jednoduše jej využiješ znovu na jiném místě.
  • Přehlednost – koncept objektů a tříd je nejen efektivní, ale také přehledný. To oceníš zejména při práci na větších a komplikovaných projektech.
  • Flexibilita – díky principům dědičnosti a polymorfismu (povíme si o nich níže) lze flexibilně vytvářet i velmi složité datové struktury a algoritmy.

Ve kterých jazycích se objektové programování používá?

Možná tě to překvapí, ale OOP využiješ v celé řadě nejznámějších programovacích jazyků. Primárně jde o:

  • Python – jeden z nejrozšířenějších programovacích jazyků, se nímž se potkáš v našich kurzech Data Analyst a Python Backend Developer.
  • Java – prakticky celá Java je o objektech, proto se na ní také často staví aplikace.
  • C++ – tento silně objektově orientovaný programovací jazyk umožňuje využívat principy třídy, dědičnosti i polymorfismu (viz další kapitola).
  • Ruby – jedná se o dynamický a tzv. vysokoúrovňový jazyk, navržený s důrazem na jednoduchost a efektivitu.

Pokud se naučíš ovládat principy objektového programování jako takového, nebude pro tebe těžké znalosti přenést do jednotlivých jazyků. Ať už začneš u Pythonu, nebo třeba Javy.

Základní principy objektově orientovaného programování

Představení OOP by se neobešlo bez zmínky o čtyřech důležitých principech, na kterých celé objektově orientované programování stojí. Jedná se o zapouzdření, polymorfismus, dědičnost a abstrakci.

Co se týče dědičnosti, ta umožňuje vytvářet další třídy založené na již existujících třídách. Nové třídy tak po předchozích „zdědí“ chování a vlastnosti.

Zapouzdření umožňuje skrýt vnitřní (interní) stav objektu a omezit přístup k jeho datům pouze na určité části programu.

Abstrakce pro změnu slouží ke zjednodušování – s její pomocí programátor vytvoří entity z reálného světa tak, aby byl kladen důraz jen na důležité vlastnosti a chování. Abstrakce tím pádem redukuje složitost procesu a poskytuje jednoduché rozhraní pro interakci s objekty.

A na závěr polymorfismus, tedy schopnost objektu reagovat na stejný požadavek různými způsoby v závislosti na svém aktuálním kontextu.

Představ si například různé hračky v krabici. Každá může dělat něco jiného, ale všechny jsou součástí jedné krabice. Když si z nich vybereš jednu hračku a řekneš jí, aby udělala něco speciálního (třeba pisklavý zvuk), nejspíš se bude chovat jinak než ostatní, ale přesto patří mezi ostatní hračky.

Otevřeme ti dveře ke kariérní změně

Chceš ještě dnes udělat první krok ke změně kariéry a naučit se programovat? Vyber si jeden z našich aktuálně vypsaných kurzů. Po jeho absolvování můžeš začít pracovat jako juniorní IT specialista (v rámci zaměření, které se vybereš).

Pokud máš jakékoliv otázky, neváhej nám kdykoliv napsat na e-mail ahoj@coderslab.cz.

Sleduj nás na Facebooku

Sleduj Coders Lab na Facebooku a začni odebírat novinky i zábavu z IT.

Mohlo by tě také zajímat

Další témata z IT oboru

Svět IT je rozmanitý a velmi obsáhlý. Je proto důležité zaměřit se z počátku na to podstatné. Přinášíme výběr toho nejdůležitějšího, co tě v IT může potkat, nebo na co se nás zájemci o kurzy často ptají.
Nevíš jistě, který kurz je pro tebe ten pravý?
Máš pochybnosti? Udělej si test tvých silných stránek a zjisti, která cesta je pro tebe nejlepší.