PočítačeProgramování

PLO - co je to? Základní principy objektově orientovaného programování

Proč je objektově orientované programování přednostní ve většině projektů? PLO nabízí efektivní způsob, jak se vypořádat s jejich složitosti. Místo toho, aby s ohledem na program jako sled spustitelných instrukcí, představuje ji jako skupina objektů s určitými vlastnostmi a vytvářet jim s některými akcemi. To má za následek jasnější, spolehlivých a legkosoprovozhdaemyh aplikací.

Základní principy objektově orientovaného programování (OOP), vytvořený z důvodu omezení byly nalezeny v pre-existujících přístupů. Mezi nimi - neomezený přístup k údajům a velké množství odkazů, které ukládají omezení na změnu. Jejich povědomí a příčiny důležité pochopit, co OOP programování a jaké jsou jeho výhody.

Jednacími jazyky

C, Pascal, FORTRAN a podobné jazyky jsou procedurální. To znamená, že každý z operátora říká počítači něco udělat: získat data, sečtěte čísla, rozdělených do šesti, zobrazení výsledku. Dodatek procedurální jazyk je seznam instrukcí. Je-li malá, není nutná žádná další organizačním principem (často označované jako paradigmatu). Programátor vytvoří seznam instrukcí, a počítač je provede.

Oddělení funkcí

Když aplikace jsou stále těžkopádnější seznam zatáček. Málokdo může pochopit více než pár set instrukcí, dokud jsou seskupeny. Z tohoto důvodu je funkce byl způsob, jak aplikace srozumitelnější jejím tvůrcům. V některých jazycích, stejný koncept lze nazvat subrutiny nebo procedury.

Aplikace je rozdělena do funkce, z nichž každý má jasně definovaný účel a rozhraní.

Myšlenka oddělení postupů může být rozšířena do většího seskupení objektu nazvaný modul, ale princip je podobný: seskupení prvků, které nesou seznamy dokumentů.

Oddělení funkcí a modulů - jedním ze základních kamenů strukturovaného programování, který po několik desetiletí až do PLO bylo to představuje paradigma.

strukturované programovací problémy

Jako aplikace jsou stále větší, strukturované programování začínají potíže. Projekty příliš složitá. posunul grafiku. Jde o velký počet programátorů. Složitost rozrostla. Náklady na natáčení nahoru, plán byl dále posunul, a tam přišel kolaps.

Analýza příčin poruch objevily nedostatky procesní vzor. Bez ohledu na to, jak dobře strukturované implementován programový přístup, velké aplikace stávají příliš složitá.

Jaké jsou příčiny těchto problémů spojených s procedurálních jazyků? Za prvé, funkce mají neomezený přístup ke globálním datům. Za druhé, nesouvisející postupy a špatné hodnoty simulovat reálný svět.

Pokud vezmeme v úvahu tyto otázky v souvislosti s účetním zásob software je jedním z nejdůležitějších prvků globální data je sada SKU. Různé funkce lze na ně odkazovat k zadání nové hodnoty, je zobrazeno, změny a podobně. D.

neomezený přístup

Program napsaný, například v C, existují dva typy dat. Místní skrytý uvnitř funkce a nejsou použity jiné postupy.

Když se dvě nebo více funkcí mají přístup ke stejným údajům, musí být globální. Taková, jako jsou například vzít v úvahu informace o předmětech. Globální data mohou být veškeré dostupné postup.

Ve velkém programu, existuje mnoho funkcí a mnoho globálních prvků. Problém procedurálního paradigmatu je, že to vede k většímu počtu potenciálních vazeb mezi nimi.

Takový velký počet spojení způsobuje několik problémů. Za prvé, to komplikuje pochopení struktury programu. Za druhé, obtížné změnit. Změna v globální datové položky mohou vyžadovat úpravu všech funkcí, které mají přístup k němu.

Například v programu účetnictví někdo rozhodne, že představovaly objektový kód by se měl skládat ne z 5 číslic, a od 12. To bude vyžadovat změnu datového typu z krátkodobého až dlouhodobá. Nyní spojené s funkcí kód musí být upraven tak, aby práce s novým formátem.

Jsou-li tyto prvky ke změně ve větším žádosti, je těžké říci, jakým způsobem k nim mají přístup. Ale i když na tomto obrázku, jejich změna může vést k nesprávnému fungování s dalšími globálními daty. Vše je propojeno se vším ostatním, takže změna v jednom místě vymstít v jiném.

Modelování reálného světa

Druhý a důležitější problém procedurálního paradigmatu je, že jeho umístění specifické parametry a funkce špatně simuluje věci v reálném světě. Zde máme co do činění s objekty, jako jsou lidé nebo automobily. Jsou jako žádná data nebo funkci. Komplexní real-svět objekty mají vlastnosti a chování.

atributy

Příklady atributů (někdy nazývané vlastnosti) pro lidi jsou barva očí a název příspěvku, pro auto - síla a počet dveří. Jak se ukázalo, že atributy reálného světa rovnocenné s údaji v programu. Mají specifické hodnoty, jako jsou modré (barva očí) nebo čtyři (počet dveří).

chování

Chování - je to, že v reálném světě objekty jsou produkovány v reakci na nějakém nárazu. Zeptáte-li se šéfa na zvýšení platu, že odpověď je „ano“ nebo „ne“. Pokud stisknete tlačítko na brzdu, bude auto zastaví. A zastavení výpovědi chování jsou příklady. Chování podobný postup: to je voláno, aby něco udělat, a to dělá tak. To znamená, že údaje a funguje tak, že samy o sobě nejsou modelovat reálný svět efektivně objekty.

adresování

Objekt v OOP je reprezentován jako soubor dat a funkcí. Pouze postupy, které se nazývají funkce členů v jazyce C ++, umožňují získat hodnotu. Ty jsou skryty a chráněny před změnami. Význam a funkce jsou zapouzdřeny do jedné. Zapouzdření a upryatyvanie - základní pojmy v popisu objektově orientovaných jazyků.

Chcete-li změnit data, přesně ví, co funguje v interakci s nimi. Žádné jiné postupy, nemohou přistupovat k nim. To zjednodušuje psaní, ladění a udržovat program.

Aplikace se obvykle skládá z několika předmětů, které na sebe vzájemně působí, což způsobuje členské funkce.

V současné době je nejpoužívanějším jazykem OOP (objektově orientovaného programování) - C ++ (plus plus). V Javě postrádá některé funkce, jako jsou ukazatele, šablon a vícenásobné dědičnosti, což je méně výkonná a všestranná než C ++. C # dosud nedosáhla popularity C ++.

Je třeba uvést, že takzvaná funkce členů v jazyce C ++ s názvem metody v některých jiných objektově orientované jazyky, jako je Smalltalk. Tyto datové položky se nazývají atributy. Volání metody objektu mu posílá zprávy.

analogie

Můžete si představit, objekty odděleními firmy. Ve většině organizací, zaměstnanci nepracují jeden den s pracovníky, následující přebíjení plat, a pak týden zabývá maloobchodu. Každé oddělení má své vlastní zaměstnance s jednoznačně povinností. K dispozici jsou vlastní data: ukazatele mezd, prodeje, účetnictví personálu atd Lidé v odděleních pracují s jejich informací ... Rozdělení společnosti, a proto usnadňuje kontrolu nad svým provozem a udržuje integritu dat. Účetní je odpovědný za zpracování mezd. Chcete-li znát celkový objem vyplacených mezd na jižní větev v červenci, nemusíte se ponořit do archivu. To je dost poslat poznámku odpovědné osobě, počkejte, dokud tato osoba má přístup k údajům a odešle odpověď na požadované informace. To zajišťuje dodržování předpisů a absenci vnějšího zásahu. Stejným způsobem objekt v OOP poskytuje aplikace organizace.

Je třeba připomenout, že orientace objektů se nevztahuje na podrobnosti pracovního programu. Většina instrukce C ++ operátorů odpovídá procesních jazyků, jako je C ve skutečnosti, že členské funkce v jazyce C ++ jsou velmi podobné funkce v C pouze širších souvislostech umožní zjistit, zda instrukce procedurální nebo objektově orientované.

Objekt v OOP: Definice

Při úvahách o problém programování v objektově orientovaném jazyce namísto otázek o jeho rozdělení do jednotlivých funkcí je problém v dělících zařízeních. OOP myšlení je mnohem snazší vývoj aplikací. To je vzhledem k podobnosti softwaru a reálných objektů.

Jaké věci jsou objekty v OOP? Zde jsou některé typické kategorie.

Fyzický objekt v OOP - je:

  • Modely dopravních toků;
  • elektrické komponenty v programech obvodu;
  • Ekonomika modelu země;
  • Letoun v řízení letového provozu systému.

Prvky prostředí počítače uživatele:

  • nabídka;
  • okna;
  • grafika (čára, obdélník, kruh);
  • klávesnice, myš, tiskárna, diskové jednotky.

lidé:

  • pracovníků;
  • studentů;
  • zákazníky;
  • prodejci.

informace:

  • vedení účetnictví;
  • soukromá záležitost;
  • slovníku;
  • Tabulka zeměpisných šířek a délek sídel.

Komunikace reálného světa objektů a OOP byla výsledkem kombinace funkcí a údajům, které způsobily revoluci programování. Taková úzká shoda v procedurálních jazycích tam.

třída

Objekty v PLO - člen třídy. Co to znamená? Programovací jazyky mají vestavěné datové typy. Typ int, t. E. Celé číslo, které je předem určeno v jazyce C ++. Můžete prohlásit libovolný počet Int proměnných.

Podobně, množství objektů definovaný jedné třídy. Definuje funkce a údaje obsažené ve svých zařízeních, je nevytváří, stejně jako int nevytváří proměnné.

Třída v PLO - popis mnoha podobných objektů. Prince, Sting a Madonna jsou zpěváci. Není nikdo toho jména, ale lidé mohou být tak nazvat, pokud mají odpovídající vlastnosti. OOP objekt - tato instance.

dědictví

V životě třídy jsou rozděleny na podtřídy. Například zvířata jsou rozděleny do obojživelníků, savců, ptáků, hmyzu a tak dále. D.

Principem tohoto druhu rozdělení je, že každá podtřída má společné rysy s třídou, z nichž. Všechny vozy mají kola a motor. To je rozhodující prvky vozidel. Kromě obecných vlastností každé podtřídy má své vlastní charakteristiky. Existuje mnoho autobusových sedadel a nákladní auta mít prostor nést těžká břemena.

Podobně, základní třída může být podtřídou rodičovské několik deriváty, které mohou být definovány tak, že budou sdílet své vlastní charakteristiky s přídavkem. Dědičnost jako funkce, zjednodušuje procesní program. Pokud několik částí kódu dělají skoro stejné, můžete extrahovat společné prvky a dát je do jednoho řízení. Tři aplikační oblast může volat funkci provádět běžné činnosti, ale mohou produkovat i své vlastní operace. Podobně, základní třída obsahuje informace společné pro skupiny derivátů. Podobná funkce snižuje dědictví objektově orientovaného programu a objasnit vztah jejích prvků.

recyklace

Jakmile je třída vytvořen a odladěn, může být převeden na jiné programátory k opětovnému použití ve vlastních aplikacích. Je to jako knihovna funkcí, které mohou být obsaženy v různých aplikacích.

V OOP, dědičnost je rozšíření myšlenky na vícenásobné použití. Z existující třídy, beze změny, můžeme vytvořit novou s přidáním dalších funkcí. Snadnost opětovného použití stávajících softwaru - důležitá výhoda OOP. Předpokládá se, že poskytuje rostoucí ziskovost počáteční investice.

Vytvoření nové datové typy

Zařízení vhodné pro vytváření nových datových typů. Předpokládejme, že program používá dvourozměrné hodnoty (např poloha nebo zeměpisná šířka a délka), a mají touhu vyjádřit působení aritmetiky na nich:

místo1 = poloha + původu,

kde poloha 1, poloha a původ - dvojice nezávislých číselných hodnot. Vytvoření třídu, která obsahuje tyto dvě hodnoty, a deklarace proměnných ze svých objektů vytvoří nový datový typ.

Polymorfismus, přetěžování

Operátory = (stejné), a + (plus), používané v aritmetické polohy nad nepůsobí stejně jako vestavěné typy, jako například int. Pořadí objektů a další. Nejsou předurčených a nastavit pomocí software. Jak se tito operátoři vědí, jak s nimi pracovat? Odpověď spočívá v tom, že nové chování lze nastavit pro ně. Tyto operace budou člen funkce třídy Position.

Použití operátorů či postupy v závislosti na tom, co pracují se nazývá polymorfismus. Když tam je operátor, jako je + nebo =, dostane příležitost pracovat s novým typem dat, se říká, že je přetížen. Přetížení v PLO - druh polymorfismus. To je jeho důležitou vlastností.

Kniha o OOP „objektově orientovaného programování for Dummies“ umožní každému seznámit se s tímto tématem podrobněji.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 cs.unansea.com. Theme powered by WordPress.