Základy programování

Přehled

Objektově orientované programování (OOP) je programovací paradigma založené na konceptu „objektů“, které mohou obsahovat data ve formě polí, často označovaných jako atributy, a kód ve formě procedur, často označovaných jako metody. Vlastností objektů je, že procedury objektu mohou přistupovat k datovým polím objektu, s nímž jsou spojeny, a často je i upravovat (objekty mají pojem „this“ nebo „self“). Jazyky OOP jsou značně rozmanité, ale ty nejpopulárnější jsou založeny na třídách, což znamená, že objekty jsou instancemi tříd, které obvykle také určují jejich typ.

Diskuse

Dosud jsme se věnovali procedurálnímu programování. Na základě strukturovaného programování obsahují procedury (rutiny, podprogramy nebo funkce) řadu výpočetních kroků, které je třeba provést. Každá daná procedura může být volána v libovolném okamžiku provádění programu, a to i jinými procedurami nebo sama sebou. Těžištěm procedurálního programování je rozdělení programové úlohy na soubor proměnných, datových struktur a podprogramů. Malé programy a skripty se obvykle snáze vyvíjejí pomocí jednoduchého procedurálního přístupu.

Objektově orientované programování místo toho rozkládá programovací úlohu na objekty, které vystavují chování (metody) a data (členy nebo atributy) pomocí rozhraní. Nejdůležitějším rozdílem je, že zatímco procedurální programování používá procedury pro práci s oddělenými datovými strukturami, objektově orientované programování je spojuje dohromady, takže „objekt“, který je instancí třídy, pracuje se svou „vlastní“ datovou strukturou. Větší programy těží z lepší izolace kódu a dat a opakovaného použití, které poskytuje objektově orientovaný přístup.

Objekty a třídy jsou často navrženy tak, aby reprezentovaly objekty reálného světa. Jako příklad objektu reálného světa uvažujme dveře. Většina dveří má omezenou funkčnost. Mohou se otevírat a zavírat a zamykat a odemykat. V procedurálním programování bychom mohli navrhnout funkce pro otevírání, zavírání, zamykání a odemykání dveří, například:

Procedural Programming - FunctionsOpenDoor(door)CloseDoor(door)LockDoor(door)UnlockDoor(door)

Objektově orientované programování kombinuje kód a data, takže místo toho, aby na dveře působily samostatné funkce, navrhujeme dveře, které mají metody, které mohou působit samy na sebe. Metody představují něco, co objekt může dělat, a obvykle se definují pomocí sloves. Pseudokód objektově orientovaných dveří může vypadat takto:

Object-Oriented Programming - Methodsdoor.Open()door.Close()door.Lock()door.Unlock()

Objekty mohou mít také atributy, tedy něco, čím objekt je nebo co má, a jsou obvykle definovány pomocí podstatných nebo přídavných jmen. Mezi atributy dveří může patřit:

Object-Oriented Programming - Attributesdoor.Heightdoor.Widthdoor.Colordoor.Closeddoor.Locked

Při psaní kódu pro definici obecných dveří bychom vytvořili třídu dveří. Třída dveří by obsahovala všechny metody, které mohou dveře provádět, a všechny atributy, které mohou dveře mít. Poté bychom vytvořili instance třídy (objekty), které by reprezentovaly konkrétní dveře, například přední dveře, zadní dveře nebo dveře do místnosti na domě nebo levé a pravé dveře na autě.

Klíčové pojmy

atribut Specifikace, která definuje vlastnost objektu. třída Rozšiřitelná šablona kódu programu pro vytváření objektů, poskytující počáteční hodnoty stavu (členské proměnné) a implementace chování (členské funkce nebo metody). instance :Konkrétní výskyt objektu. metoda Specifikace, která definuje postup nebo chování objektu. objekt Konkrétní instance třídy, kde objekt může být kombinací proměnných, funkcí a datových struktur. this, self nebo Klíčová slova používaná v některých počítačových programovacích jazycích pro označení objektu, třídy nebo jiné entity, jejíž součástí je právě běžící kód.

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna.