Štruktúrované programovanie vs. objektovo orientované programovanie
Objektovo orientované programovanie (OOP) a štruktúrované programovanie sú dve programovacie paradigmy. Programovacie paradigma je základný štýl počítačového programovania. Programové paradigmy sa líšia v tom, ako sú zastúpené jednotlivé prvky programov a ako sú definované kroky na riešenie problémov. Ako už názov napovedá, OOP sa zameriava na reprezentovanie problémov pomocou objektov v reálnom svete a ich správania, zatiaľ čo štruktúrované programovanie sa zaoberá usporiadaním programu v logickej štruktúre..
Čo je štruktúrované programovanie?
Predpokladá sa, že rok narodenia štruktúrovaného programovania je 1970. Štruktúrované programovanie sa považuje za podmnožinu imperatívneho programovania. Štruktúrovaný program sa skladá z jednoduchých štruktúr toku programov, ktoré sú hierarchicky usporiadané. Sú to sekvencie, výber a opakovanie. Postupnosť je poradie vyhlásení. Výber znamená výber príkazu zo súboru príkazov na základe aktuálneho stavu programu (napríklad použitie príkazov if) a opakovanie znamená vykonanie príkazu, kým sa nedosiahne určitý stav (napríklad použitie príkazov for alebo while). ALGOL, Pascal, Ada a PL / I sú niektoré zo štruktúrovaných programovacích jazykov, ktoré sa dnes používajú.
Čo je objektovo orientované programovanie?
V OOP sa zameriava na premýšľanie o probléme, ktorý sa má vyriešiť z hľadiska prvkov skutočného sveta, a predstavuje problém z hľadiska predmetov a ich správania. Triedy zobrazujú abstraktné reprezentácie objektov skutočného sveta. Triedy sú ako plány alebo šablóny, ktoré zhromažďujú podobné položky alebo veci, ktoré je možné zoskupiť. Triedy majú vlastnosti nazývané atribúty. Atribúty sú implementované ako globálne a inštančné premenné. Metódy v triedach predstavujú alebo definujú správanie týchto tried. Metódy a atribúty tried sa nazývajú členovia triedy. Inštancia triedy sa nazýva objekt. Preto je objekt dátovou štruktúrou, ktorá sa veľmi podobá nejakému skutočnému objektu.
Existuje niekoľko dôležitých konceptov OOP, ako napríklad abstrakcia údajov, zapuzdrenie, polymorfizmus, zasielanie správ, modularita a dedičnosť. Typicky sa zapuzdrenie dosiahne privedením atribútov do súkromia, zatiaľ čo sa vytvoria verejné metódy, ktoré sa dajú použiť na prístup k týmto atribútom. Dedičnosť umožňuje používateľovi rozšíriť triedy (nazývané podtriedy) z iných tried (nazývaných super triedy). Polymorfizmus umožňuje programátorovi nahradiť objekt triedy namiesto objektu jeho nadtriedy. Zvyčajne sa podstatné mená nájdené v definícii problému stávajú priamo triedami v programe. A podobne sa slovesá stávajú metódami. Niektoré z najpopulárnejších jazykov OOP sú Java a C #.
Aký je rozdiel medzi štruktúrovaným programovaním a objektovo orientovaným programovaním?
Kľúčovým rozdielom medzi štruktúrovaným programovaním a OOP je to, že cieľom štruktúrovaného programovania je štruktúrovať program do hierarchie podprogramov, zatiaľ čo cieľom OOP je rozdeliť programovaciu úlohu na objekty, ktoré zapuzdrujú údaje a metódy. OOP sa považuje za flexibilnejší ako štruktúrované programovanie, pretože OOP skôr program rozdeľuje na sieť podsystémov, než štruktúruje program do hierarchie. Aj keď štruktúrovanie poskytuje určitú zrozumiteľnosť, malá zmena veľmi veľkého štruktúrovaného programu môže spôsobiť zvlnenie efektu zmeny viacerých podprogramov..