Articles

objektově orientované programování (OOP)

Objektově orientované programování (OOP) je programovací model, který organizuje software design kolem údajů, nebo objekty, spíše než funkce a logiky. Objekt lze definovat jako datové pole, které má jedinečné atributy a chování.

OOP se zaměřuje spíše na objekty, které vývojáři chtějí manipulovat, než na logiku potřebnou k jejich manipulaci. Tento přístup k programování je vhodný pro programy, které jsou velké, složité a aktivně aktualizované nebo udržované.

organizace objektově orientovaného programu také činí metodu výhodnou pro kolaborativní rozvoj, kde jsou projekty rozděleny do skupin.

Mezi další výhody OOP patří opakovatelnost kódu, škálovatelnost a účinnost. I při používání mikroservisů by vývojáři měli i nadále uplatňovat zásady OOP.

prvním krokem v OOP je shromažďovat všechny objekty programátor chce manipulovat a zjistit, jak se vztahují k sobě navzájem-cvičení často známý jako datové modelování.

příklady objektu se mohou pohybovat od fyzických entit, jako je člověk, který je popsán vlastnostmi, jako je jméno a adresa, až po malé počítačové programy, jako jsou widgety.

znázornění objektově orientované programování
příklad úmluv v objektově orientovaného programování.

jakmile je objekt znám, je označen třídou objektů, která definuje druh dat, která obsahuje, a všechny logické sekvence, které s ním mohou manipulovat. Každá odlišná logická sekvence je známá jako metoda. Objekty mohou komunikovat s dobře definovanými rozhraními zvanými zprávy.

Principy OOP

Objektově orientované programování je založeno na následujících principech:

  • Zapouzdření. Implementace a stav každého objektu jsou soukromě drženy uvnitř definované hranice nebo třídy. Jiné objekty nemají přístup k této třídě nebo oprávnění provádět změny, ale mohou volat pouze seznam veřejných funkcí nebo metod. Tato charakteristika skrytí dat poskytuje větší zabezpečení programu a zabraňuje neúmyslnému poškození dat.
  • abstrakce. Objekty odhalují pouze vnitřní mechanismy, které jsou relevantní pro použití jiných objektů a skrývají zbytečný implementační kód. Tento koncept pomáhá vývojářům snadněji provádět změny a doplňky v průběhu času.
  • dědičnost. Vztahy a podtřídy mezi objekty mohou být přiřazeny, což vývojářům umožňuje znovu použít společnou logiku při zachování jedinečné hierarchie. Tato vlastnost OOP nutí důkladnější analýzu dat, zkracuje dobu vývoje a zajišťuje vyšší úroveň přesnosti.
  • polymorfismus. Objekty mohou mít v závislosti na kontextu více než jednu formu. Program určí, který význam nebo použití je nezbytné pro každé provedení tohoto objektu, kácení potřebu duplikovat kód.

Objektově orientované programovací jazyky

Zatímco Simula je připočítán jako první objektově orientovaný programovací jazyk, nejvíce populární OOP jazyky jsou:

  • Java
  • JavaScript
  • Python
  • C++
  • Visual Basic .NET
  • Ruby
  • Scale
  • PHP

OOPSLA je výroční konference pro Objektově Orientované Programování Systémů, Jazyků a Aplikací.

kritika OOP

objektově orientovaný programovací model byl vývojáři kritizován z několika důvodů. Největší obavou je, že OOP příliš zdůrazňuje datovou složku vývoje softwaru a dostatečně se nezaměřuje na výpočty nebo algoritmy. Kromě toho může být psaní OOP kódu komplikovanější a kompilace trvá déle.

Alternativní metody OOP patří:

  • funkční programování
  • strukturované programování
  • imperativního programování

nejmodernější programovací jazyky dávají vývojářům možnost kombinovat tyto modely.