logo

Olio-ohjelmoinnin esittely

Kuten nimestä voi päätellä, Object-Oriented Programming tai OOP:t viittaavat kieliin, jotka käyttävät olioita ohjelmoinnissa. Olio-ohjelmoinnin tavoitteena on toteuttaa ohjelmointiin reaalimaailman kokonaisuuksia, kuten perinnöllisyys, piiloutuminen, polymorfismi jne. OOP:n päätavoite on sitoa tiedot ja niillä toimivat toiminnot yhteen siten, että mikään muu koodin osa ei pääse käsiksi näihin tietoihin kuin kyseinen toiminto.

OOPs-käsitteet:



  • Luokka
  • Objektit
  • Tietojen abstraktio
  • Kapselointi
  • Perintö
  • Polymorfismi
  • Dynaaminen sidonta
  • Viestiä ohitetaan

1. Luokka:

Luokka on käyttäjän määrittämä tietotyyppi. Se koostuu datajäsenistä ja jäsenfunktioista, joita voidaan käyttää ja joita voidaan käyttää luomalla kyseisen luokan esiintymä. Se edustaa joukkoa ominaisuuksia tai menetelmiä, jotka ovat yhteisiä kaikille samantyyppisille objekteille. Luokka on kuin suunnitelma esineelle.

Esimerkiksi: Harkitse autoluokkaa. Autoja voi olla monia eri nimillä ja merkeillä, mutta niillä kaikilla on joitain yhteisiä ominaisuuksia, kuten kaikissa on 4 pyörää, nopeusrajoitus, kilometrimäärä jne. Joten tässä auto on luokka, ja pyörät, nopeusrajoitukset, kilometrimäärä ovat niiden ominaisuuksia.



2. Objekti:

Se on olio-ohjelmoinnin perusyksikkö ja edustaa tosielämän kokonaisuuksia. Objekti on luokan esiintymä. Kun luokka määritellään, muistia ei varata, mutta kun se instantoidaan (eli objekti luodaan), muisti varataan. Objektilla on identiteetti, tila ja käyttäytyminen. Jokainen objekti sisältää dataa ja koodia tietojen käsittelemiseksi. Objektit voivat olla vuorovaikutuksessa ilman, että niiden tarvitsee tietää yksityiskohtia toistensa tiedoista tai koodista, riittää, kun tietää hyväksytyn viestin tyypin ja objektien palauttaman vastauksen tyypin.

Esimerkiksi koira on tosielämän esine, jolla on joitain ominaisuuksia, kuten väri, rotu, haukku, uni ja syöminen.



Objekti OOP:issa

Esine

3. Tietojen abstraktio:

Tietojen abstraktio on yksi olio-ohjelmoinnin oleellisimmista ja tärkeimmistä ominaisuuksista. Tiedon abstraktiolla tarkoitetaan vain olennaisen tiedon välittämistä tiedosta ulkomaailmalle, taustatietojen tai toteutuksen piilottamista. Harkitse tosielämän esimerkkiä miehestä, joka ajaa autoa. Mies tietää vain, että kaasupolkimien painaminen lisää auton nopeutta tai jarruttaminen pysäyttää auton, mutta hän ei tiedä kuinka kaasupoljinta painettaessa nopeus kasvaa, hän ei tiedä auton sisämekanismista tai kaasupolkimen, jarrujen jne. toteutus autossa. Tämä on sitä, mitä abstraktio on.

4. Kapselointi:

Kapselointi määritellään tietojen käämittämiseksi yhden yksikön alle. Se on mekanismi, joka sitoo yhteen koodin ja sen käsittelemän tiedon. Kapseloinnissa luokan muuttujat tai tiedot ovat piilossa kaikilta muilta luokilta ja niihin pääsee vain minkä tahansa luokan jäsenfunktion kautta, jossa ne on ilmoitettu. Kuten kapseloinnissa, luokan tiedot ovat piilossa muilta luokilta, joten se tunnetaan myös nimellä tietojen piilottaminen .

Kapselointi olio-ohjelmointiin

Ajatellaanpa tosielämän esimerkkiä kapseloinnista, jossa yrityksessä on erilaisia ​​osioita, kuten kirjanpitoosio, rahoitusosio, myyntiosio jne. Rahoitusosasto käsittelee kaikki rahoitustapahtumat ja pitää kirjaa kaikista rahoitukseen liittyvistä tiedoista. Vastaavasti myyntiosasto hoitaa kaikki myyntiin liittyvät toiminnot ja pitää kirjaa kaikista myynneistä. Nyt voi syntyä tilanne, kun talousosaston virkamies jostain syystä tarvitsee kaikki tiedot tietyn kuukauden myynnistä. Tässä tapauksessa hänellä ei ole oikeutta päästä suoraan myyntiosion tietoihin. Hänen on ensin otettava yhteyttä johonkin muuhun myyntiosaston virkailijaan ja pyydettävä sitten häntä antamaan kyseiset tiedot. Tätä on kapselointi. Täällä myyntiosion tiedot ja niitä käsittelevät työntekijät on kääritty yhden nimen myyntiosion alle.

5. Perintö:

Periytys on OOP:n (Object-Oriented Programming) tärkeä pilari. Luokan kykyä johtaa ominaisuuksia ja ominaisuuksia toisesta luokasta kutsutaan perinnöllisyydeksi. Kun kirjoitamme luokkaa, perimme ominaisuuksia muilta luokilta. Joten kun luomme luokan, meidän ei tarvitse kirjoittaa kaikkia ominaisuuksia ja toimintoja uudestaan ​​​​ja uudestaan, koska ne voidaan periä toiselta luokalta, jolla se on. Perinnön avulla käyttäjä voi käyttää koodia uudelleen aina kun mahdollista ja vähentää sen redundanssia.

Vuorovaikutus olioohjelmoinnissa

javalla on seuraava

6. Polymorfismi:

Sana polymorfismi tarkoittaa monia muotoja. Yksinkertaisesti sanottuna voimme määritellä polymorfismin viestin kyvyksi näyttää useammassa kuin yhdessä muodossa. Esimerkiksi henkilöllä voi samanaikaisesti olla erilaisia ​​ominaisuuksia. Kuten mies on samaan aikaan isä, aviomies, työntekijä. Joten samalla henkilöllä on erilainen käyttäytyminen eri tilanteissa. Tätä kutsutaan polymorfismiksi.

Polymorfismi OOP:issa

7. Dynaaminen sidonta:

Dynaamisessa sidonnassa funktiokutsuun vasteena suoritettava koodi päätetään ajon aikana. Dynaaminen sidonta tarkoittaa, että tiettyyn proseduurikutsuun liittyvä koodi tunnetaan vasta puhelun aikaan ajon aikana. Dynaaminen menetelmäsidonta Yksi periytymisen tärkeimmistä eduista on, että jossakin johdetussa luokassa D on kaikki sen perusluokan B jäsenet. Kun D ei piilota yhtään B:n julkista jäsentä, D:n objekti voi edustaa B:tä missä tahansa kontekstissa. jossa B:tä voitaisiin käyttää. Tämä ominaisuus tunnetaan alatyypin polymorfismina.

8. Viestin välitys:

Se on viestinnän muoto, jota käytetään olio-ohjelmoinnissa sekä rinnakkaisohjelmoinnissa. Objektit kommunikoivat keskenään lähettämällä ja vastaanottamalla tietoa toisilleen. Objektin sanoma on pyyntö toimenpiteen suorittamiseksi, ja siksi se kutsuu vastaanottavassa objektissa toiminnon, joka tuottaa halutut tulokset. Viestin välittäminen sisältää kohteen nimen, toiminnon nimen ja lähetettävän tiedon määrittämisen.

Miksi tarvitsemme olio-ohjelmointia

  • Hankkeiden kehittämisen ja ylläpidon tekeminen vaivattomaksi.
  • Tarjoaa tietojen piilotusominaisuuden, joka on hyvä turvallisuussyistä.
  • Voimme ratkaista todellisia ongelmia, jos käytämme olio-ohjelmointia.
  • Se varmistaa koodin uudelleenkäytettävyyden.
  • Sen avulla voimme kirjoittaa yleistä koodia: joka toimii useiden tietojen kanssa, joten meidän ei tarvitse kirjoittaa perusasioita yhä uudelleen ja uudelleen.