You are on page 1of 11

Objektno

orijentisano
programiranje
UVOD
Objektno orijentisano programiranje (OOP –Object
oriented programming) je razvijeno kao odgovor na sve
složenije softverske zahteve.
Koncept za rešavanje ovih zahteva se bazira na nezavisnim
jedinicama programske logike i njihovoj ponovnoj upotrebi
u softveru.
OOP može da se shvati kao skup povezanih objekata koji
zajedno rade.
Svaki objekat je sposoban da prima i predaje poruke od/do
drugih objekata i da obrađuje podatke.
Svaki objekat ima svoju ulogu i odgovornost.
OOP - Osnovni koncept
Klasa je apstrakcija nekog objekta iz realnog sistema i
uključuje njegove karakteristike (osobine, atribute) i
ponašanje (metodi, operacije).
Klasa je nacrt (šablon) koji opisuje prirodu nekih
stvari (tvorevina). Ove stvari mogu biti fizički objekti ili
neki koncepti, odnosno apstrakcije
(npr. klase Ucenik, Nastavnik, Automobil, Radnik...)
OOP - Osnovni koncept
Objekat je pojedinačna instanca (primerak) klase. Na
primer, objekat Pera Perić je jedna instanca u klasi
Ucenici.
Posmatrajući pojedinačne objekte možemo uočiti
zajedničke osobine –atribute (npr datum rođenja,
mesto stanovanja, razred i odeljenje).
Objekat je nosilac ponašanja u svojoj klasi.
Prema tome, klasa se može definisati kao skup
objekata koji imaju iste atribute i ponašanje.
OOP - Osnovni koncepti
Akcije koje primenjujemo nad objektima nazivaju se
metodi.
Ako posmatramo klasu Ucenici onda bi metodi mogli biti
dobijena ocena, promena odeljenja... Na ovaj način se
opisuje funkcionalnost objekta.
Metod predstavlja funkciju/radnju primenjenu nad
objekoma. U okviru programa samo jedan objekat
izvršava metod.
OOP –važne karakteristike
Nasleđivanje
Enkapsulacija
Apstrakcija
Polimorfizam
Nasleđivanje je specijalizovano svojstvo klase koja nasleđuje
atribute i ponašanje svoje nadređene klase (klase roditelja), ali
ima i svoje sopstvene atribute i ponašanja. Na primer, u klasi
Studenti, studenti svih smerova pripadaju toj klasi, ali smeru
Informatika pripadaju samo studenti koji su upisani na
odgovarajući program. Višestruko nasleđivanje je kada klasa
nasleđuje osobine i ponašanja od više klasa.
Enkapsulacija je sakrivanje funkcionalnih detalja klase od
objekata koji mu šalju poruke. Enkapsulacija se postiže
specificiranjem koje klase mogu da koriste članice datog
objekta.
Apstrakcija je pojednostavljenje složene realnosti
modelovanjem klasa koje odgovaraju problemu. To je
kontrolisano izostavljanje karakteristika realnog objekta
koje nisu bitne za rešavanje određenog problema.
Polimorfizam omogućava da se izvedene članice klase
tretiraju kao članice njihove klase roditelj. To je
sposobnost da različiti objekti odgovore na istu poruku na
različite načine. Polimorfizam je svojstvo svih objektno
orijentisanih programskih jezika, što znači da ista
operacija može da se različito ponaša u različitim
klasama. Na primer, operacija vožnje klase “automobili” i
klase “bicikl” su različiti jer se na jedan način voze
automobili a na drugi način bicikli.
Zaključak
Klasom se opisuju objekti sa istim
karakteristikama (podaci članovi)
ponašanjem (funkcionalnostima – metode)
Podaci članovi (atributi)
svaki objekat ima sopstvene vrednosti podataka članova
trenutne vrednosti podataka objekta čine trenutno stanje
objekta
Funkcije članice (metodi)
njima je su definisana ponašanja objekta
poziv metoda jednog objekta – slanje poruke
obrada zahteva tj. odgovaranje na poruku
Objektno orjentisan softver se sastoji od više samostalnih
objekata koji su međusobno povezani atributima i
operacijama.
Atributi su svojstva ili promenljive koje se odnose na
objekat.
Operacije su metode, radnje ili funkcije koje objekat može
da izvršava.
Klase čini skup objekata koji imaju velike sličnosti i male
razlike.

You might also like