Prezentace se nahrává, počkejte prosím

Prezentace se nahrává, počkejte prosím

Algoritmizace a programování Objektově orientované programování - 16 Mgr. Josef Nožička IKT Algoritmizace a programování www.zlinskedumy.cz.

Podobné prezentace


Prezentace na téma: "Algoritmizace a programování Objektově orientované programování - 16 Mgr. Josef Nožička IKT Algoritmizace a programování www.zlinskedumy.cz."— Transkript prezentace:

1 Algoritmizace a programování Objektově orientované programování - 16 Mgr. Josef Nožička IKT Algoritmizace a programování www.zlinskedumy.cz

2 AnotaceMateriál seznamuje žáky se základy objektově orientovaného programování. Musí být doplněn výkladem. AutorMgr. Josef Nožička (Autor) JazykČeština Očekávaný výstup26–41-M/01 Elektrotechnika 78-42-M/01 Technické lyceum Speciální vzdělávací potřeby - žádné - Klíčová slovaObjekt, třída, konstruktor Druh učebního materiáluPrezentace Druh interaktivityKombinované Cílová skupinaŽák Stupeň a typ vzděláváníodborné vzdělávání Typická věková skupina16 - 19 let Vazby na ostatní materiályJe součástí IKT.

3 OOP – základní filozofie Základní filozofie objektově orientovaného programování (dále jen OOP) spočívá v tom, že program se skládá ze skupiny objektů, které obsahují určitá data a mají definované společné rozhraní, s jehož pomocí spolu vzájemně komunikují. Také programovací jazyk Delphi je objektově orientovaný jazyk, který u některých svých konstrukcí využívá principů OOP. Výhod OOP může v Delphi využívat i programátor při tvorbě vlastních programů.

4 Datový typ třída (class) Pro definici vlastních objektů se v Delphi používá datový typ třída. Obecné schéma definice třídy je následující: jmeno=class seznam proměnných; seznam metod; end; Poznámka: Do definice třídy dále mohou být navíc včleněna klíčová slova private, public nebo published, pomocí nichž je definováno zabezpečení jednotlivých částí třídy.

5 Příklad definice třídy type Thodiny=class hodiny:byte; minuty:byte; sekundy:byte; constructor Init (h,m,s:byte); procedure Nastavhodiny (h,m,s:byte); procedure Ukazcas; end; Poznámka: Uvedená třída obsahuje 3 proměnné (hodiny, minuty, sekundy) a 3 metody (Init, Nastavhodiny, Ukazcas).

6 Konstruktor a jeho význam Konstruktor je speciální metoda, která slouží k vytvoření jednotlivých objektů a inicializaci (nastavení) jejich počátečních hodnot. Například u třídy z předchozího snímku se s pomocí konstruktoru vytvoří objekty hodiny, minuty a sekundy (tj. vyhradí se pro ně místo v paměti o příslušné velikosti). Nastavení jejich počátečních hodnot se pak provede v těle konstruktoru: constructor Thodiny.Init (h,m,s:byte); begin hodiny:=h; minuty:=m; sekundy:=s; end;

7 Základní vlastnosti OOP Objektově orientované programování se vyznačuje 3 základními vlastnostmi, kterými se odlišuje od ostatních programátorských technik: Dědičnost Zapouzdření Polymorfismus

8 Dědičnost je vlastnost, která při definici třídy umožňuje převzít některé objekty z dříve definované třídy. Příklad: Tbudik=class(Thodiny) zvoneni:boolean; constructor Init (h,m,s:byte;zv:boolean); procedure Nastavzvoneni(zv:boolean); end; Třída Tbudik převezme všechny objekty z dříve definované třídy Thodiny a přidá k nim objekty nové (proměnnou zvoneni a metodu Nastavzvoneni). Konstruktor Init bude doplněn o nastavení proměnné zvoneni.

9 Zapouzdření Díky této vlastnosti je možné omezit přístup k jednotlivým datům tak, aby je nemohl používat nikdo jiný než jejich oprávněný vlastník. Každý objekt, který je součástí třídy, může přitom mít nastavenou různou úroveň zabezpečení, určenou jedním z těchto klíčových slov: private – objekt se může používat pouze v rámci jednotky, v níž je deklarován public – objekt je volně přístupný a zajišťuje komunikaci třídy s jejím okolím published – podobně jako public s tím rozdílem, že objekt obsahuje navíc informace o běhu programu

10 Polymorfismus Je vlastnost, umožňující zaměnitelnost jednotlivých objektů v rámci dědičné hierarchie. Jedná se o vlastnost, které většinou využívají pouze pokročilí programátoři. Používá se například v případě, kdy chceme v rámci nové třídy předefinovat metodu, převzatou (zděděnou) od jejího předka.

11 Zdroje PÍSEK, Slavoj. Delphi-začínáme programovat: podrobný průvodce začínajícího uživatele. Praha: Grada, 2002, ISBN 80-247-0547-8.


Stáhnout ppt "Algoritmizace a programování Objektově orientované programování - 16 Mgr. Josef Nožička IKT Algoritmizace a programování www.zlinskedumy.cz."

Podobné prezentace


Reklamy Google