Prírodou inšpirované algoritmy
študijné materiály pre projekt mobilnej triedy umelej inteligencie
|
|
Základné princípy OOPHlavné nástroje na riešenie
problémov
Pre riešenie zložitých problémov zo sveta aplikácií
použijeme následovné nástroje:
- dekompozícia: zložitý problém sa vhodným
spôsobom rozdelí na menšie problémy, ktoré sa
riešia jednotlivo a celkový výsledok sa poskladá z
čiastkových výsledkov.
- abstrakcia: pri riešení problémov hľadáme
zjednodušené modely objektov z reálneho sveta
(nepodstatné vlastnosti objektov zanedbáme).
Abstraktný popis umožňuje popísať chovanie
ľubovolného množstva podobných objektov.
- hierarchia abstraktných modelov: podobne ako sme
cestou zjednodušenia dospeli k abstraktným modelom
reality, môžeme opačnou cestou dospieť k
špecializácii abstraktného modelu.
Charakteristika
Objektovo orientovaný programovací štýl sa dá v stručnosti
popísať ako obecný postup založený na priamom modelovaní
objektov z reálneho sveta vo svete počítača s využitím
prostriedkov pre abstrakciu a hierarchizáciu popisu.
Modelom objektu z reálneho sveta je objekt, ktorý existuje
za behu programu. Vlastnosti objektov z reálneho sveta sú v
objektoch sveta počítača realizované ako vlastnosti s
charakterom:
- informácie: sú implementované ako dátové
štruktúry. Vlastnosti tohto typu sa v OOP označujú
ako atribúty, napr. pre objekt Chrobák je
konštantným atribútom veľkosť sveta v ktorom sa
pohybuje a premenlivým jeho momentálna pozícia vo
svete.
- typové operácie, (funkcie alebo služby):
prevádzajú sa nad dátovou štruktúrou objektu. Ich
volaním zvonku sa realizuje interakcia (spolupráca)
objektov. Vlastnosti s charakterom typových operácii
sú implementované ako procedúry, funkcie v OOP sa
označujú ako metódy. V programovacom jazyku Ojective C
je pred každou metódou znamienko mínus. Pri
Chrobákovi môže byť príklad metódy: urob ďalší
krok, čím sa zmení atribút momentálnej pozície vo
svete.
- činnosť: je implementovaná ako programový text
popisujúci vlastnú aktivitu (t.j. život) objektu,
realizovanú súbežne s aktivitou iných objektov. Ako
príklad možno uviesť viacero Chrobákov
požierajúcich rôzne druhy potravy, čo sú tiež
objekty.
Triedy a inštancie
Objektový typ sa realizuje prostredníctvom konštrukcie
nazývanej trieda. Trieda realizuje konkrétnu podobu
zapuzdrenia svojich prvkov. Zložky triedy sú obvykle atribúty
a metódy. Zapuzdrením sa myslí, že každý prvok s
charakterom dát patrí nejakej triede či inštancii. Inštancia
je objekt s konkrétnymi vlastnosťami. Hovorili sme o tom, že
Chrobák požiera viac druhov potravy, čo sú objekty rovnakého
typu. Bolo by neekonomické konštruovať samostatný programový
popis (model) pre každý druh potravy. Nasadíme mechanizmus
abstrakcie, ktorý sme spomenuli vyššie a budeme uvažovať len
druh potravy a jej umiestnenie vo svete. Po tejto úvahe môžeme
skonštruovať abstraktný popis potravy nasledovne:
- typ a meno atribútu druh potravy
- typ a meno atribútu umiestnenie vo svete
- programový text metódy jedenie potravy
Jednotný popis vlastností množiny podobných objektov sa v
OOP nazýva objektový typ.
|
|
Kontakt: Marek Bundzel |