SzámítógépekProgramozás

PLO - mi ez? Az alapelvek az objektum-orientált programozás

Miért objektumorientált programozás előnyös a legtöbb projekt? PFSZ kínál hatékony módja annak, hogy foglalkozik a komplexitás. Ahelyett, hogy egy program sorozata végrehajtható utasításokat, ez jelenti azt, mint egy csoport tárgyak bizonyos tulajdonságai és ezek előállításához bizonyos intézkedéseket. Ennek eredménye egy tisztább, megbízhatóbb és legkosoprovozhdaemyh alkalmazásokhoz.

Az alapelvek az objektum-orientált programozás (OOP) alakult, mert korlátozások találtak már meglévő megközelítések. Közülük - korlátlan hozzáférést az adatokhoz, és a nagy számú linkek, amelyek korlátozzák a változás. Tudatosságuk és okok fontos megérteni, mi OOP programozás és mik az előnyei.

eljárási nyelvek

C, Pascal, Fortran, és hasonló nyelv procedurális. Azaz minden az üzemeltető azt mondja a számítógépet, amit: hogy az adatokat, add fel a számokat, osztva hat, az eredmény látható. Függelék eljárási nyelv oktatás lista. Ha ez kicsi, nincs más rendező elv (gyakran nevezik a paradigma) nem szükséges. A programozó egy listát hoz létre utasításokat, és a számítógép végrehajtja.

Feladatok szétválasztása

Amikor alkalmazások egyre nehézkesebb listája fordulat. Kevesen tudják, hogy jobban megértsük, mint néhány száz utasításokat, amíg vannak csoportosítva. Emiatt a funkció volt a módja annak, hogy az alkalmazás érthetőbbé az alkotók. Néhány nyelvben, a koncepció ugyanaz nevezhetjük szubrutinok vagy eljárásokat.

Az app van osztva funkciókat, amelyek mindegyike egy világosan meghatározott cél és interfész.

Az az elképzelés, elválasztási eljárások bővíthető egy nagyobb csoportja objektum úgynevezett modul, de az elv analóg: csoportosítása komponensek hordozó listákat dokumentum.

Feladatok szétválasztása és modulok - az egyik alapköve a strukturált programozás, amely több évtizeden át, amíg a PFSZ volt jelent paradigmát.

strukturált programozási feladatok

Ahogy az alkalmazások egyre nagyobbak lesznek, strukturált programozás kezd nehézségekbe. Projektek túlságosan bonyolult. eltolódott grafika. Ez magában foglalja a nagyszámú programozók. A komplexitás nőtt. Költségek lövöldözni, a menetrend tolódott tovább, és ott jött az összeomlás.

Elemzés eltérés okait feltárt hiányosságok eljárási paradigma. Függetlenül attól, hogy milyen jól strukturált végrehajtott programozási megközelítés, a nagy alkalmazások válnak túlzottan bonyolult.

Mi az oka ezeknek a problémáknak kapcsolatos eljárási nyelven? Először is, a funkciók korlátlan hozzáférést globális adatok. Másodszor, nem rokon eljárások és rossz értékek szimulálni a valós világban.

Ha figyelembe vesszük ezeket a kérdéseket keretében leltár számviteli szoftver, az egyik legfontosabb eleme a globális adatok halmaza SKUs. Különböző funkciókat lehet hivatkozni, hogy adja meg az új értéket, akkor az megjelenik, változások és így tovább. D.

korlátlan hozzáférést

A programot írt, például a C, kétféle adatot. Helyi rejtve a funkció és egyéb eljárások nem alkalmazhatók.

Ha két vagy több funkció van, hogy ugyanazokat az adatokat, az utóbbi kell a globális. Ilyen például figyelembe veszik információkat az alanyok. A globális adatok lehetnek bármely rendelkezésre álló eljárás.

Egy nagy program, sok funkciók és számos globális elemeket. A probléma az eljárási paradigma, hogy ez vezet a nagyobb számú potenciális kapcsolat közöttük.

Egy ilyen nagy számú kapcsolatot okoz több nehézséget. Először is, ez megnehezíti a megértést a program szerkezetét. Másodszor, nehéz megváltoztatni. Változás a globális adatelem beállítása válhat szükségessé összes funkció férnek hozzá.

Például a programban számviteli valaki úgy dönt, hogy elszámolni tárgykód kell állnia és nem 5 számjegyű, és 12. Ez módosítását teszi szükségessé az adatok típusát a rövid és hosszú. Most társított funkció kódot kell módosítani, hogy működjön együtt az új formátum.

Amikor az elemek megváltoznak egy nagyobb alkalmazás, nehéz megmondani, hogy mi eljárások férhetnek hozzájuk. De még ha ez a szám, azok megváltoztatása vezethet helytelen működése más globális adatokat. Minden összefügg mindennel más, így a változás egy helyen sül másik.

Modellezése a valós világ

A második és fontosabb probléma az eljárási paradigma, hogy a helye konkrét adatok és funkciók rosszul szimulálja azt, ami a világban. Itt van dolgunk tárgyak, mint például az emberek vagy az autók. Ők nem olyanok, mint az adatok vagy a funkciót. Komplex valós tárgyak attribútumokat és viselkedését.

attribútumok

Példák attribútumok (néha tulajdonságok) az emberek szem színe és a nevét a bejegyzést egy autó - a hatalom és az ajtók száma. Mint kiderült, az attribútumok a valós világ azonos az adatokat a programban. Ezek bizonyos értékeket, mint a kék (szemszín) vagy négy (a ajtók száma).

viselkedés

Magatartás -, hogy valós tárgyak válaszként termelt valamilyen hatása. Ha kérik a főnök béremelés, a válasz „igen” vagy „nem”. Ha megnyomja a féket, az autó leáll. És leállítása a megnyilatkozás viselkedés példák. Viselkedés hasonló eljárással: ez az úgynevezett tenni valamit, és ez így. Így az adatok és funkciók önmagukban nem modellezni a valós tárgyak hatékonyan.

kezelése

A tárgy OOP képviselteti magát, mint egy sor adatok és funkciók. Csak azokat az eljárásokat, amelyek az úgynevezett tagsági függvények C ++, hogy így az értékét. Ezek rejtett és védett a változásokat. Jelentések és funkciók vannak beágyazva egy. Tokozás és upryatyvanie - alapfogalom a leírása az objektum-orientált nyelv.

Ha meg akarjuk változtatni az adatokat, pontosan tudja, hogy milyen funkciókat kölcsönhatásba lépnek velük. Nincs más eljárások nem tud hozzáférni. Ez egyszerűsíti írásban, hibakeresés, és fenntartása a programot.

Egy alkalmazás jellemzően több objektum, amelyek kölcsönhatásba lépnek egymással, ami a tag funkciókat.

Ma a legelterjedtebb nyelv OOP (objektumorientált programozás) - C ++ (plus plus). A Java hiányzik néhány funkciók, mint a mutatók, sablonok és többszörös öröklés, ami miatt kevésbé erős és sokoldalú, mint a C ++. C # még nem érte el a népszerűsége a C ++.

Meg kell jegyezni, hogy az úgynevezett tagja funkciókat C ++ nevezett módszerek valamilyen más objektum-orientált nyelvek, mint a Smalltalk. Az adatok képezik az úgynevezett tulajdonságokat. Calling egy módszert az objektum küld neki üzenetet.

analógia

El lehet képzelni a tárgyak a vállalati osztályok. A legtöbb szervezet, az alkalmazottak nem dolgoznak egy nap a személyzet, a következő túltöltés fizetést, majd egy héttel részt a kiskereskedelemben. Minden részleg saját személyzet, egyértelműen kijelölt feladatokat. Vannak saját adatai: mutatói a bérek, értékesítési, számviteli munkatársak, stb emberek a szervezeti egységek működnek az információs ... Az üzletág a cég, ezért megkönnyíti az ellenőrzési műveletek és fenntartja az adatok integritását. Számviteli felelős a bér. Ha szeretné tudni, hogy a teljes összeget kifizetett bérek a déli ág júliusban, nem kell ásni az archívumba. Ez elég ahhoz, hogy küldjön egy üzenetet a felelős személy, várja meg, amíg ez a személy az adatokhoz való hozzáférés és küldi el a választ, hogy a kért információkat. Ez biztosítja, jogszabályok és hiányában a külső beavatkozás. Ugyanígy egy tárgy a PFSZ biztosít szervezet alkalmazás.

Emlékeztetni kell arra, hogy az orientáció tárgyak nem vonatkozik részleteket a munkaprogramot. A legtöbb utasításokat C ++ operátorok megfelel az eljárási nyelvek, mint a C. Tény, hogy a tag funkciókat C ++ nagyon hasonló funkciókat C. Csak a tágabb összefüggésben lehetővé teszi annak megállapítása, hogy az utasítás eljárási vagy objektumorientált.

A tárgy OOP: Definíció

Ha figyelembe vesszük a problémát a programozás objektumorientált nyelv helyett kérdéseket annak felosztását külön funkciók probléma a szétválasztó létesítmények. OOP gondolkodás sokkal könnyebb fejleszteni alkalmazásokat. Ez annak köszönhető, hogy a hasonlóság a szoftver és a valós tárgyak.

Milyen dolgok tárgyak OOP? Íme néhány tipikus kategóriája.

Fizikai tárgy OOP - jelentése:

  • forgalomáramlási modellek;
  • elektromos alkatrészek az áramkörben programok
  • Az ország gazdasága modellt;
  • repülőgép a légiforgalmi irányítási rendszer.

A környezeti elemek a felhasználó számítógépén:

  • menü;
  • ablakok;
  • grafika (vonal, téglalap, kör);
  • billentyűzet, egér, nyomtató, merevlemez meghajtók.

emberek:

  • munkások;
  • hallgatók számára;
  • fogyasztók számára;
  • eladók.

információk:

  • könyvvezetés;
  • magánügy;
  • szótár;
  • táblázata szélességi és hosszúsági települések.

Kommunikáció a valós világ tárgyak és a PFSZ volt az eredménye, funkciók kombinációját és adatokat forradalmasították a programozást. Egy ilyen szoros meccset eljárási nyelvek vannak.

osztály

Tárgyak a PFSZ - egy osztály tagja. Mit jelent ez? Programozási nyelvek beépített adattípusok. Típus int, t. E. Egy egész szám, előre meghatározott C ++. Akkor nyilvánítja bármennyi int változó.

Hasonlóképpen, több objektum által meghatározott egy osztályban. Ez határozza meg a feladatokat és az adatok szerepelnek a szolgáltatásokat, és nem teremt számukra, valamint egy int nem hoz létre változókat.

Osztály a PFSZ - leírása számos hasonló tárgyakat. Prince, Sting és Madonna is az énekeseket. Nincs egy ilyen nevű, de az emberek is nevezik így, ha rendelkezik a megfelelő tulajdonságokkal. OOP objektum - ebben az esetben.

öröklés

Az életben, osztályokat alosztályokba osztják. Például, az állatok vannak osztva kétéltűek, emlősök, madarak, rovarok és így tovább. D.

Az elv a fajta felosztás, hogy minden alosztály vannak közös jellemzői az osztályban, ahonnan a. Minden autó rendelkezik kerekekkel és egy motort. Ez meghatározó jellemzői a járművek. Amellett, hogy az általános jellemzőit minden alosztály megvannak a maga sajátosságai. Sok busz ülések és teherautók, hogy a tér, hogy nehéz terhek.

Hasonlóképpen, egy alap osztályt lehet alosztálya szülő több származékok, amelyek úgy kell meghatározni, hogy azok megosszák saját jellemzői hozzáadásával. Öröklési szerű funkciók, egyszerűsítve az eljárási programot. Ha több a kód csinálnak nagyjából ugyanazt, akkor kivonat a közös elemeket, és azokat egy eljárásban. Három alkalmazási terület A funkciót a gyakori műveleteket, de lehet előállítani és saját működése. Hasonlóképpen, az alap osztályt tartalmaz közös információkat a csoport a származékok. Egy hasonló funkció csökkenti a öröklődése objektum-orientált programot, és kapcsolat tisztázása elemében.

újrafeldolgozás

Ha az osztály jön létre, és kijavítottuk, átvihető más programozók felhasználhat saját alkalmazásokat. Ez olyan, mint egy könyvtár funkciót lehet benne a különböző alkalmazásokban.

Az OOP, öröklés egy kiterjesztése az elképzelést, többszöri felhasználásra alkalmas. Egy meglévő osztály megváltoztatása nélkül, mi alkothat újat azzal a kiegészítéssel, egyéb funkciók. A könnyű újra a meglévő szoftver - egy fontos előnye a PFSZ. Úgy véljük, hogy ez biztosítja növekvő nyereségesség a kezdeti befektetés.

Új adattípusok

Létesítmények alkalmasak az új adattípusok. Tegyük fel, hogy egy program kétdimenziós értékek (pl koordinátái, vagy szélesség és hosszúság), és a vágy, hogy kifejezze az intézkedés a számtani őket:

álláspontját1 = pozíció + eredetű,

ahol álláspontját1, összesen és származási - egy pár független számszerű értékeket. Létrehozása egy osztály, amely magában foglalja a két érték és változó nyilatkozatok céljai létrehoz egy új típusú adatokat.

Polimorfizmus, túlterhelés

Az üzemeltetők = (egyenlő), és a + (plusz) alkalmazott aritmetikai pozicionális fenti nem hatnak, valamint egy beépített típusok, mint például int. Pozíció tárgyak, és a többiek. Nem előre, és a szoftverek. Hogyan hatnak ezek a szereplők tudják, hogyan kell kezelni őket? A válasz abban rejlik, hogy az új viselkedést lehet állítani őket. Ezek a műveletek lesznek tagfüggvény Class álláspont.

Segítségével szereplők vagy eljárásokat attól függően, hogy mit dolgozik az úgynevezett polimorfizmus. Ha van egy szolgáltató, mint a + vagy =, megkapja a lehetőséget, hogy az új adatok típusát, azt mondja, hogy túl van terhelve. Overload a PFSZ - egyfajta polimorfizmus. Ez a fontos jellemzője.

A könyvet a PFSZ „objektum-orientált programozás kezdőknek” lehetővé teszi mindenki számára, hogy megismerjék ezt a témát részletesebben.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

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