Mi az OOP? - Alapelvek példákkal Előnyök hátrányok

Tartalomjegyzék:

Anonim

Mi az OOP?

Objektum-orientált programozás (vagy OOP) egy olyan programozási paradigma, amelyben a programokat objektumok körül írják és szerkesztik, nem pedig funkciók vagy logika helyett. Az objektumokat itt olyan adatmezőkként definiálják, amelyek egyedi attribútumokkal és viselkedéssel bírnak. Adatokat tartalmaznak attribútumok és eljárások módszerek formájában. Az objektumeljárások hozzáférhetnek és módosíthatnak egy objektumban található adatokat.

Sok OOP nyelv létezik, a legnépszerűbbek osztályalapúak, ahol az objektumok egy osztály példányai lesznek. Az osztály az adatok és az eljárások tárolója, más néven adat tagok és tag funkciók. Vegyünk egy példát egy tárgyra, mint autóra. Az autó olyan tulajdonságokkal rendelkezik, mint a szín, márkanév, üzemanyag-kapacitás stb., És rendelkezik olyan módszerekkel, amelyek az autó viselkedését reprezentálják, mint például indulás, gyorsítás, megszakítás stb. Az osztály egy attribútumok és módszerek tervrajza, és nem foglal helyet., amíg és hacsak nem készül az adott osztály objektuma.

Példa :

class car
(
char name(20); // name and colour are attributes
char colour(20);
public void start()() //start is a method
);
void main()
(
car c1; //c1 is an object
)

Objektum-orientált programozási célok, amelyeket a programozásban végre kell hajtani olyan valós entitásokban, mint az öröklés, a polimorfizmus, a beágyazás stb., Amelyeket részletesen látni fogunk. Az OOP fő célja az adatok és az azokon működő funkciók együttes összerendelése úgy, hogy ezek az adatok csak ezen funkcióval érhetők el.

Az OOP alapelvei

Az objektum-orientált programozás négy fő alapelve a kapszulázás, az absztrakció, az öröklés és a polimorfizmus.

1. Kapszula:

Az adatok és módszerek egyetlen egységbe történő összekapcsolását kapszulázásnak nevezzük. A beágyazás akkor érhető el, amikor az osztályon belüli minden objektum állapotát magántulajdonban tartja. Az egységen belüli adatok külső objektumok által nem érhetők el, és csak az egység belsejében található funkciók férhetnek hozzá. Így az objektum módszereinek segítségével kezeli állapotát, és ahhoz, hogy kommunikáljon vele, ehhez az osztály nyilvános módszereinek segítségére lesz szükségünk.

2. Absztrakció

Az absztrakció a beágyazás kiterjesztése. Ez azt jelenti, hogy csak a szükséges információkat szolgáltatja a külvilágnak, miközben elrejti a végrehajtás belső részleteit. Csak a többi objektumhoz tartozó megfelelő műveleteket tárja fel. Ennek előnye az, hogy megváltoztathatjuk a megvalósítást anélkül, hogy az osztályt befolyásolnánk, mivel a metódus felülete változatlan marad.

Vegyünk példát egy számológépre, amely tőlünk veszi a bemenetet, és egy gombnyomással megadja a kívánt eredményt, miközben megbénít minket a belső információkkal, hogy miként érkezett meg a válasz.

3. Öröklés

Az objektumok gyakran funkcionálisan hasonlóak, megosztják a logika egy részét, de a többiben különböznek. Tehát hogyan használhatjuk újra a közös logikát, és elválaszthatjuk a különböző logikákat? Ez örökléssel érhető el. Az öröklés során létrehozunk egy új osztályt, amelyet gyermekosztálynak nevezünk, amelyet a meglévő, szülőosztálynak nevezett osztályból származtatunk, ezáltal osztályok hier0archy-ját képezve. A gyermekosztály újrafelhasználja az adatmezőket és módszereket, amelyeket a szülőosztálytól megkövetel, és egyedülálló módon valósítja meg egyedi funkcióit.

Például, a jármű lehet egy szülői osztály, amelyből származtathatunk olyan gyermekórákat, mint a Bike és a Car. Közös tulajdonságaik vannak abban, hogy üzemanyagot tudnak szállítani és utasokat szállítani, de különböznek a szállítható utasok számában és az ilyen tulajdonságokban.

4. Polimorfizmus

A polimorfizmus az a képesség, hogy egynél több formát is felvegyen. Tegyük fel, hogy van egy szülőosztályunk és néhány gyermek osztálya. Most a szülők és a gyermekek osztályainak attribútumait akarjuk használni, így hogyan lehet ezt elérni? Ezt meg lehet tenni a polimorfizmus segítségével. A polimorfizmusban az absztrakt entitásokat többféle módon hajtják végre. Lehetőséget kínál arra, hogy egy osztályt pontosan a szülő osztályhoz hasonlóan fogyaszthassunk, oly módon, hogy ne legyen összetéveszthető az osztályok típusának keverésével, és minden gyermekosztály továbbra is megtartja módszereit, ahogy volt. Ez megtörténhet a szülői felület újbóli felhasználásával, hogy a gyermekosztály ezeket a módszereket saját verziójában valósítsa meg.

Objektum-orientált programozás előnyei

  • Egy valós ötlet demonstrálható, mivel az OOP-ban mindent objektumként kezelnek.
  • Mivel a beágyazás fogalmát használjuk, a programokat könnyebb tesztelni és karbantartani.
  • A kód gyorsabb fejlesztése megtörténik, mivel az osztályokat egymás után, hanem párhuzamosan fejlesztjük.
  • Az OOP nagyobb biztonságot nyújt az absztrakció miatt. A külvilág nem fér hozzá a rejtett adatokhoz.
  • Az újrafelhasználhatóság a már megírt osztályok használatával érhető el.

Az objektum-orientált programozás hátrányai

  • Az OOP koncepciójú program megtervezése trükkös lehet.
  • A programozónak előre meg kell terveznie egy program kidolgozását az OOP-ban.
  • Az OOP-val kidolgozott programok mérete nagyobb, mint az eljárási megközelítéssel kidolgozott programok mérete.
  • Mivel az OOP programok nagyobb méretűek, ezen programok végrehajtási ideje is hosszabb.

Hogyan segítheti az OOP ismerete a karrier növekedést?

Manapság a legtöbb legfontosabb trendnyelv, például a Java és a Ruby, objektum-orientált programozási koncepciókat használ. Az OOP nyelvek segítenek a szoftverek írásában olyan alkalmazásokhoz, mint például a mobil, web és játék alkalmazások. Ezekben a területeken magas a jövedelem, mint például a programozók számára a legjobb munkalehetőségek ezen a területen. Az OOP alapjaival könnyű áthelyezni a különböző technológiákat és nyelveket, és ez kibővíti karrierlehetőségeinket. Ennek egyik hátránya a tapasztalat. Általában a vállalatok gyakorlati tapasztalatokat keresnek az OOP nyelvekben és fogalmakban, ezért ajánlott gyakorolni, mivel a tanulási folyamat mentén haladunk.

Következtetés

Objektum-orientált programozás leegyszerűsíti számunkra a programozási folyamatot. Számos olyan értéke van, mint például az újrafelhasználhatóság, a hatékonyság és a kód karbantartása. Noha kezdetben nehéz lehet megérteni az OOP fogalmait, biztosítom, hogy a gyümölcs megéri az erőfeszítéseket. Remélem, ez a cikk segített egyszerűsíteni ezeket a fogalmakat az Ön számára!

Ajánlott cikk

Ez egy útmutató a Mi az OOP termékhez? Itt megvitattuk a fogalmakat, a meghatározást és az alapelveket az OOP előnyeivel és hátrányaival. A további javasolt cikkeken keresztül további információkat is megtudhat -

  1. A Hadoop nyílt forráskódú?
  2. Mi a Java öröklés?
  3. Mi a többszálú C # -ben?
  4. Mi az ASP.Net webszolgáltatások?