Download as doc, pdf, or txt
Download as doc, pdf, or txt
You are on page 1of 13

UNIVERZITET U NIU VISOKA TEHNIKA KOLA STRUKOVNIH STUDIJA

SEMINARSKI RAD
Studijski program: Savremene raunarske tehnologije Predmet: Programski jezici 2

Tema: Objektno orijentisano programiranje i jezici

Profesor: Student: dr. Miloevi Borivoje Branislav 02/11

Majki REr

Objektno orijentisano programiranje i jezici Branislav, Rr 02/11

Majki

Ni, 2012.
Sadraj _
Uvod............................................................................3 Objektno-orijentisano programiranje ............................4 Osnovni principi - Objektno orijentisano programiranje..4 Pojam i deklaracija klase..............................................8
4.1. Polimorfizam....................................................................9 4.2. Apstrakcija.......................................................................9 4.3. Uaurivanje (encapsulation)............................................10 4.4. Hijerarhija......................................................................10

Istorijat jezika C++.....................................................10 ta daju OOP i C++ kao reenje?................................11 ta se menja prelaskom na OOP?...............................12 Zakljuak...................................................................12

Objektno orijentisano programiranje i jezici Branislav, Rr 02/11

Majki

Uvod
Objektno orijentirano programiranje (OOP) u raunarstvu je jedna od programskih paradigmi. Od ranih 1980-tih pa do danas ova paradigma je postala najuticajnija paradigma u komercijalnom razvoju softvera. Programski jezici poput C++ i Java programski jezik su svojom popularnou utvrdili vodei status OOP-a kao de facto obaveznog pristupa pri razvoju softvera danas, te i jezici koji tradicionalno nisu bili objektno orijentirani su naknadno dodali OOP koncepte (npr. Visual Basic, Pascal programski jezik itd.). Objektno orijentisano programiranje ima niz bitnih koncepata koji menjaju nain programiranja u odnosu na strukturne programske jezike. Osnovni koncepti objektno orijentisanog programiranja su objekti, klase, polja i metode.

Objektno orijentisano programiranje i jezici Branislav, Rr 02/11

Majki

Objektno-orijentisano programiranje
Objektno-orijentirano programiranje je paradigma programiranja, koja koristi objekte kao osnovu za projektovanje raunarskih programa i razliitih aplikacija softvera. Zasniva se na razliitim tehnikama, kao to su nasleivanje, modularnost, polimorfizam i enkapsulacija. Reavanje problema paradigmom objektno-orijentiranog programiranja, je vrlo slino ljudskom nainu razmiljanja i reavanju problema. Sastoji se od identifikovanja objekata i postavljanje objekata koji e se koristiti u odgovarajuu sekvencu za reenje odreenog problema. Radi se o dizajnu objekata ija e ponaanja kao jedinica i u njihovoj meusobnoj interakciji, reiti odreeni problem. Interakcija izmeu objekata se sastoji u razmeni poruka, gde odreena poruka usmerena prema odreenom objektu, pokree enkapsulirane operacije u tom objektu, ime se reava deo obino ireg isloenijeg problema. Uopteno gledano, objektno-orijentirano rjeavanje problema se sastoji iz etiri koraka:
1. 2. 3. 4.

Identifikovanje problema Identifikovanje objekata koji su potrebni za njegovo reenje Identifikovanje poruka koje e objekti meusobno slati i primati Kreiranje sekvence poruka objektima, koje e rjeavati problem ili probleme.

U paradigmi objektno-orijentiranog programiranja, objekti su strukture podataka koje predstavljaju odreeno i jasno definirano znanje o spoljanjem svetu ili stvarnosti. Tipina organizacija je u hijerarhijske klase, gde svaka klasa objekta poseduje informacije o osobinama objekta koje se uvaju u instancama promenljivih i koje su povezane (konceptom asocijacije) sa svakom instancom u odreenoj klasi. Svaki objekat prepoznaje drugi objekat preko njegovog interfejsa. Podaci i logika svakog objekta su skriveni od drugih objekata. Time se omoguava razdvajanje implementacije od ponaanja objekta u interakciji sa drugim objektima.

Osnovni principi - Objektno orijentisano programiranje


Strukturnim programiranjem teimo da to realistinije preslikamo (modeliramo, simuliramo) ponaanje nekog sistema. Objektnoorijentisanim programiranjem (oznaka OOP) preslikavamo isti taj sistem tako to ga predstavljamo kao skup meusobno povezanih objekata. Naime, ceo sistem se strukturira na manje celine kojima je lake upravljati, a koje meusobno komuniciraju. Sistem koji je ovako organizovan laki je za razumevanje, njime je lake upravljanje i rad. Smatra se da je sloenost
4

Objektno orijentisano programiranje i jezici Branislav, Rr 02/11

Majki

problema koje je neko u stanju da rei direktno srazmerna predmetu (ta?) i kvalitet (kako?) apstrakcije kojom raspolae. Svi programski jezici apstraktnim kategorijama. obezbjeuju podrku odreenim

Asemblerski jezik poseduje nizak nivo apstrakcije u odnosu na fiziku mainu (hardvare). Veina imperativnih programskih jezika (FORTRAN, BASIC, C) su samo apstrakcije asemblerskog jezika pa, iako predstavljaju znaajan napredak u odnosu na asemblerski jezik, u biti njihove apstrakcija lee kategorije koje odgovaraju arhitekturi raunarskog sistema a ne problema koji se reava. U ovom sluaju, zadatak programera je da uspostavi korespondenciju izmenu domena reenja (apstraktnog modela maine) i domena problema (apstraktnog modela realnog sveta). Napor koji je neophodno uloiti u ovo preslikavanje, a koji u jednom delu lei u samoj strukturi korienog programskog jezika, esto nema adekvatnu valorizaciju budui da rezultira programima niskog stepena semantike. Alternativa prethodno opisanom pristupu je modeliranje problema koji se reava. Prvi programski jezici koji su razvijeni na problemskoj orijentaciji uvode specifine apstrakcije realnosti na kojima zasnivaju postupak preslikavanja domena problema u domen reenja. Tipini primeri su sledei pristupi: Sve probleme je mogue apstrahtovati listom i operacijama nad njom (LISP - listu Processing) Svi problemi su algoritamske prirode (APL - Algoritmic Programming Language). Svi problemi se daju iskazati kao lanci odluivanja (PROLOG PROgrammingLOGic). Svi problemi se mogu iskazati kao skup apstraktnih ogranienja i manipulacija sanjima (Constraint Based Programming).

Svi navedeni pristupi predstavljali su dobra reenja za odreenu usku klasu problema za koju su objektivno i dizajnirani, no svaki pokuaj generalizacije iskoraka van inicijalnog domena gotovo bez izuzetka rezultira neuspehom. Objektno-orijentisani pristup posebnim ini obezbeenje alata mehanizama za iskazivanje problema pojmovima iz domena problema. Apstrakcije koje ono uvodi su dovoljno opte tako da programer nije ogranien jednim domenom primene. Objektno-orijentisano programiranje predstavlja implementacionu metodu kod koje su programi organizovani kao kooperativni skup objekata

Objektno orijentisano programiranje i jezici Branislav, Rr 02/11

Majki

pri emu svaki objekat predstavlja instancu neke klase iz hijerarhije klasa nastale na bazi relacija nasleivanja (inheritance). Objektno-orijentisani dizajn predstavlja projektantsku metodu koja obuhvata proces objektno orijentirane dekompozicije i notaciju za iskazivanje logikih i fizikih, kao i statikih i dinamikih modela posmatranog sistema. Objektno-orijentisana analiza predstavlja analitiku metodu koja zahteve (rekuirements) posmatra iz perspektive klasa i objekata koji pripada domenu problema. Osnovni pojam u objektno-orijentisanim jezicima je objekat. Objekat je entitet koji predstavlja ljude, mesta ili stvari - bilo apstraktno bilo konkretno .Karakteristike objekata predstavljene su preko atributa i metoda. Da bismo koristili gotov objekt, ne moramo da znamo kako je on pravljen, niti ta je u njemu; sve to je potrebno da znamo jeste njegova veza sa spoljnim svetom - interface, kao i to ta objekat radi. Atributi opisuju objekat, vrednosti atributa odreuju stanje objekta. Na primer: serijski broj, model, boja i godina su samo neki od atrbuta objekta "Opel", a jedno stanje tog objekta bi moglo da bude M789876, Kadet, bela, 2002. Metodi su procedure dodeljene objektu koje mogu da menjaju stanje objekta (tj mogu da menjaju vrednosti atributa). Objekti unutar programa moraju da sarauju. Da bi omoguili koordinaciju, metodi prouzrokuju i poruke (messages) koje alju drugim objektima. Ove poruke mogu da aktiviraju metode nekih drugih objekata, a tako aktivirani metodi dalje mogu da izazovu aktiviranje novih akcija nekog sledeeg objekta itd. Dakle, poruke omoguavaju objektu da komunicira sa drugim objektima. Da bi neki programski jezik bio objektno-orijentisan, on mora da:
a) ima osnovnu jedinicu enkapsulacije i da podrava "skrivanje

informacija" u okviru nje (to je klasa), b) omogui kreiranje viih instanci klase, c) omogui nasleivanje kojim se stvaraju hijerarhije klasa, d) podrava polimorfizam. Ukoliko neki jezik nema sve ove etiri osobine, ne moe se rei da je objektno orijentisan. Na primer, u programskim jezicima Clipper ili Visual Basic 3.0, korisnik moe da koristi neke ve predefinisane klase, ali ne i da stvara nove, te se za ove jezikene moe rei da su objektno-orijentisani. Objektno-orijentisani jezici su Smalltalk, Java, C + +. Nasledjivanje (inheritance) je osnova razvoja objekata; to je sistem odnosno princip koji nam omoguava da napravljene stvari ne piemo ponovo, ve samo nadogradimo onim to nama treba, za trenutni specifini problem. Cilj
6

Objektno orijentisano programiranje i jezici Branislav, Rr 02/11

Majki

nasleivanja je preuzimanje osobina jednog ili vie roditeljskih objekata, i njihova dogradnja na potreban nivo, bilo dodavanjem novih metoda i podataka, bilo primenom ve postojeih. Tako, jednom kreiran objekat moe biti neogranieno mnogo puta koriten, ime se u mnogome poveava brzina rada i produktivnost. Nasleivanje predstavlja princip da jednom definisana klasa, moe da produkuje odreenu klasu (ili vie njih), koja nasljeuje sve atribute, metode i poruke te (nadreene) klase koja ju je generirala. Podreene klase mogu da iskljue neke postojee i ukljue nove atribute ili metoda nadreene klase. Meutim, to iskljuivanje pojedinog atributa ili metode nije bukvalno, oni i dalje formalno postoje u toj klasi, samo im je onemoguen pristup. ema 1. predstavlja primer objektno-orijentisanog programiranja primenjen na podatke o zaposlenima u jednoj firmi.

Zaposleni (klasa) Ime i prezime (atribut) tampa (metoda) Nedeljna plata Zaposleni) Ime i prezime (atribut) tampa (metode) Satnica (podklasa od Nedeljna plata) Ime i prezime (atribut) Cena sata Sati nedeljno 1. - Klase, podklase i Slika tampa (metode) Plaeno (podklasa od Nedeljna plata) Ime i prezime (atribut) Plata nasleivanje tampa (metode) (podklasa od

Objektno orijentisano programiranje i jezici Branislav, Rr 02/11

Majki

Pojam i deklaracija klase


Klasa je realizacija apstrakcije koja ima svoju internu predstavu (svoje atribute) i operacije koje se mogu vriti nad njom (javne funkcije lanice). Klasa definie novi tip. Jedan primerak takvog tipa (Instanca klase) naziva se objektom te klase (engl.class object). Podaci koji su deo klase nazivaju se podaci lanovi klase (engl. data members). Funkcije koje su deo klase nazivaju se funkcije lanice klase (engl. memberfunctions). lanovi (podaci ili funkcije):

klase Iza kljune reci PRIVATE: zatieni su od pristupa spolja (enkapsullranisu). Ovim lanovima mogu pristupati samo funkcije lanice klase. Ovi lanovi nazivaju se PRIVATNIM lanovima klase (engl. private class members). lanovi iza kljune rei PUBLIC: dostupni su spolja i nazivaju se JAVNIM lanovima klase (engl. public class members). lanovi iza kljune rei PROTECTED: dostupni su funkcijama lanicama date klase, kao i klasa izvedenih iz te klase, ali ne i korisnicima spolja, i nazivaju se ZATIENIM lanovima klase (engl. protected class members).

Redosled sekcija public, protected i private je proizvoljan, ali se preporuuje ba navedeni redosled. Podrazumevano (ako se ne navede specifikator ispred) su lanovi privatni. Kae se jo da klasa ima svoje unutranje stanje, predstavljeno atributima, koje menja pomou operacija. Javne funkcije lanice nazivaju se jo i metodima klase, a poziv ovih funkcija - upuivanje poruke objektu klase. Objekat klase menja svoje stanje kada se pozove njegov metod, odnosno kada mu se uputi poruka. Objekat unutar svoje funkcije lanice moe pozivati funkciju lanicu neke druge ili iste klase, odnosno uputiti poruku drugom objektu. Objekat koji alje poruku (pozivafunkciju) naziva se objekat-klijent, a onaj koji je prima (ija je funkcija lanica pozvana) je objekat-server. Preporuka je da se klase projektuju tako da nemaju javne podatke lanove. Unutar funkcije lanice klase, lanovima objekta ija je funkcija pozvana pristupa se direktno, samo navoenjem njihovog imena. Kontrola pristupa lanovima nije stvar objekta, nego klase: jedan objekat neke klase iz svoje funkcije lanice moe da pristupi privatnim
8

Objektno orijentisano programiranje i jezici Branislav, Rr 02/11

Majki

lanovima drugog objekta iste klase. Takoe, kontrola pristupa lanovima je potpuno odvojena od koncepta oblasti vaenja: najpre se, na osnovu oblasti vaenja, odreuje entitet na koga se odnosi dato ime na mestu obraanja u programu, a zatim se odreuje da li se tom entitetu moe pristupiti. Mogue je preklopiti (engl. overload) funkcije lanice, ukljuujui i konstruktore. Deklaracijom klase smatra se deo kojim se specifikuje ono to korisnici klase treba da vide. To su uvek javni lanovi. Navedena deklaracija je zapravo definicija klase, ali se iz istorijskih razloga naziva deklaracijom.

4.1. Polimorfizam
Kako definisati polimorfizam? Posmatrajmo, na primer, telefone - neki su crveni sa krunim brojanikom, neki su beli sa dugmiima, neki imaju automatsku sekretaricu, neki faks. Meutim, kako god oni izgledali, sve ih koristimo na isti nain: podignemo slualicu i izaberemo broj. I znamo da emo bez obzira na to kako telefon izgledao, uvek moi da ga koristimo. To je polimorfizam, neka vrsta standardizacije na nivou objekata, mogunost da se n-ti objekat u naslednoj hijerarhiji poziva na isti nain kao i prvi, drugi, ili peti.

Veina autora se danas slau u tome da objektni model ine etiri osnovna elementa: 1. apstrakcija, 2. uaurivanje, 3. modularnost i 4. hijerarhija. kao i tri bitna, ali ne i neophodna, elementa: 1. tipizacija podataka, 2. konkurentnost izvravanja i 3. perzistencija.

4.2. Apstrakcija
Apstrakcija je pojednostavljena predstava nekog sistema, kreirana tako da naglasi za nas relevantne karakteristike, ignoriui sve nama nebitno. Ona predstavlja jedan od osnovnih mehanizama pomou kojih se ljudi bore sa kompleksnim problemima. Apstrakcija, o kojoj nikad ne razmiljamo na tako formalan nain je postavila temelje ceelokupnih prirodnih nauka. Celokupna Njutnova fizika nikada ne bi bila razvijena da Njutn nije zanemario otpor vazduha koji je usporavao jabuku dok mu je padala na glavu. Kreirajui objekte u programu mi kreiramo jasno definisanu
9

Objektno orijentisano programiranje i jezici Branislav, Rr 02/11

Majki

strukturu, a na je zadatak da predstavimo neto ije osobine nisu ba jasno definisane. Zbog toga apstrahujemo realan pojam i predstavljamo ga objektom, birajui samo one osobine tog objekta koje su nam potrebne. Klasa je samo definicija objekta, i obino obuhvata: koje klase nasleuje, koji metodi se menjaju i / ili dodaju, koji podaci se dodaju. Ona, u stvari, predstavlja uputstvo za ponaanje objekata, i u praktinim smislu, predstavlja mrtvo slovo na papiru. Da bi neka klasa "oivela" potrebno je da ima svoju instancu, tj radnu kopiju u memoriji. Klasa je vezana za teorijski deo objektno orijentisanog programiranja, dok je instanca praktina primena. Jedno bez drugog nemogu, poto se instanca ponaa po opisima u klasi, dok je klasa neupotrebljiva bez svoje instance. Jedna klasa moe imati vie instanci u memoriji, dok jedna instanca moe pripadati samo jednoj klasi. Ne moe npr instanca klase Zaposleni ujedno biti i instanca klase Nedeljna plata.

4.3. Uaurivanje (encapsulation)


Uaurivanje predstavlja sledeu bitnu karakteristiku objektnoorijentisanog programiranja. Ideja uaurivanja je da se sve potrebne procedure i podaci koji su potrebn iza te procedure smeste u jedan objekat. Na taj nain podaci se direktno prosleuju procedurama, koje ih obrauju. Kada su podaci i procedure razdvojeni, tada uvek postoji mogunost da neka procedura pokua da obradi neodgovarajue podatke. Modularnost se postie deljenjem programa na vie logikih celina, u okviru kojih se onda nalaze definisane klase. Osnovna prednost modularnih programa je u tome to dozvoljavaju deljenje programa na manje cjeline, ime je olakano razumevanje programa.

4.4. Hijerarhija
Hijerarhija se definie kao redosled apstrakcija. Kao to smo istakli, zahvljujui principu nasleivanja, jednom definisana klasa, moe da produkuje podreenu klasu (ili vie njih). Tako definisano stablo klasa predstavlja hijerarhiju.

Istorijat jezika C++


C++ je najvaniji programski jezik kada je re o razvoju softvera visokih performansi. Sintaksa ovog jezika postala je standard drugim programskim jezicima, a ideje koje su koriene tokom njegovog dizajniranja eszo se sreu u raunarstvu. Istorijat jezika C++ poinje od jezika C, iz prostog razloga to se na njemu zasniva. C++ je proiren i poboljan jezik C sa podrkom za objektno orijentisano programiranje. esto se kae da je jezik C++
10

Objektno orijentisano programiranje i jezici Branislav, Rr 02/11

Majki

objektno orijentisani jezik C. Osim podrke za OOP, u jeziku C++ su poboljane i ugraene biblioteke u poreenju sa jezikom C. I pored svega toga, duh i sutina jezika C++ direktno su nasleeni iz jezika C. Zbog toga, da bi se u potpunosti razumeo C++, mora se prvo razumeti C. Pojavljivanje jezika C sedamdesetih godina prolog veka oznailo je poetak modernog doba u programiranju. Dizajn ovog jezika uticao je na sve kasnije programske jezike jer je iz osnova promenio pristup programiranju. Jezik C je osmislio i prvi implementirao Denis Rii pod operativnim sistemom UNIX, da bi ubrzo stekao brojne sledbenike irom sveta iz vie razloga: bio je lak za savladavanje, omoguavao je modularno pisanje programa, sadravao je samo naredbe koje se lako prevode u mainski jezik, davao je brzi kod. Od tada pa sve do pre desetak godina veina programa bila je pisana u jeziku C, ponegde dopunjena delovima u asembleru ako je brzina bila kritini faktor. Meutim, kako su se programi razvijali, i na polju programskih jezika stanje se menjalo. Krajem sedamdesetih godina programi sa nekoliko hiljada redova koda vie nisu bili retkost, tj. poeli su da postaju sloeni da nisu mogli da se sagledaju u celini. Pojavila se potreba za reenjima koja e upravljati tom sloenou. C++ i OOP nastali su kao odgovor na te probleme. C++ je projektovao Danac Bjarne Stroustrup 1979. godine. Pre toga, on je radio na svom doktoratu na Kembridu gde je prouavao distribuiranu odbranu. Pri tom je koristio jezik Simula, koji je posedovao neke vane osobine koje su ga inile pogodnim za taj zadatak; na primer, podravao je pojam klasa, tj struktura koje objedinjuju podatke i funkcije za rad sa njima. Dobijeni kod je bio vrlo razumljiv, a Stroustrup je bio posebno oduevljen nainom na koji je sam jezik usmeravao programera prilikom razmiljanja o problemu. Kada je projektovao C++, Stroustrup je zadrao pristup jetika C, ukljuujui njegovu efikasnost, prilagodljivost i filozofiju, a istovremeno je dodao podrku za OOP. Iako je C++ prvobitno projektovan kao pomo u projektovanju veoma velikih programa, on nipoto nije ogranien iskljuivo na njih, jer se OOP atributi mogu efikasno primeniti na bilo koji programski zadatak. esto se sreu C++ aplikacije poput editora, baza podataka, sistema za upravljanje datotekama, umreavanje i komunikaciju. Poto je C++ zadrao efikasnost jezika C, mnogi softverski sistemi kod kojih su kritine performanse programirani su u jeziku C++. Takoe, C++ se esto sree i u programima za operativne sisteme Windows i Linux.

ta daju OOP i C++ kao reenje?

OOP daje kao reenjaa, a C++ podrava, sledee vane koncepte: apstraktne tipove podataka, enkapsulaciju, nasleivanje i polimorfizam. Koncept apstraktnih tipova podataka omoguava da se u programu definiu korisniki tipovi predstavljeni internom strukturom podataka i operacijama koje se mogu vriti. Enkapsulacija je zatita unutranje realizacije tipa od pristupa spolja. Nasleivanje je relacija izmeu tipova: jedan tip predstavlja jednu vrstu drugog tipa.
11

Objektno orijentisano programiranje i jezici Branislav, Rr 02/11

Majki

Polimorfizam predstavlja ponaanje nasleenog tipa na njemu svojstven nain, iako se koristi kao osnovni tip. C++ podrava i koncept preklapanja operatora: mogu se definisati znaenja operatora ugraenih u jezik, za korisnike tipove.

ta se menja prelaskom na OOP?


OOP uvodi drugaiji nain razmiljanja u programiranje. U OOP-u najznaajnije je projektovanje, a sama realizacija (kodovanje) je jednostavniji posao koji se odlae za kasnije.

Kao to je ve reeno, jezik C++ nije isti objektno orijentisani programski jezik koji bi korisnika naterao da ga koristi na objektno orijentisani (skraeno OO) nain. Jezik C++ se moe koristiti i kao malo bolji C, ali se time nita ne dobija (ak se ponekad i gubi). C++ treba koristiti kao sredstvo za implementaciju objektno orijentisanog modela i kao smernicu za razmiljanje o problemu. C++ ne spreava da se piu loi programi, ve samo pomae da se piu mnogo bolji programi.

Evo nekoliko napomena o tome ta se mea u razmiljanjuu i pisanju programa na OO nain:


1. OOP uvodi drugaiji nain razmiljanjaa u programiranje! 2. U OOP-u, mnogo vie vremena se troi na projektovanje, a manje

na samu implementaciju (programiranje, kodovanje). 3. U OOP-u se razmilja o problemu koji se reava, a ne direktno o programskom reenju. 4. U OOP-u se razmilja o delovima sistema (objektima) koji neto rade, a ne o algoritmima, tj. o tome kako se neto radi. 5. U OOP-u, panja se prebacuje sa realizacije delova programa na meusobne veze izmeu tih delova. Tenja je da se broj i intenzitet tih veza to vie smanji i da se one strogo kontroliu. Cilj OOP-a je da smanji interakciju izmeu softverskih delova.

Zakljuak
Kao to smo naveli, objektno orijentisano programiranje (Object Oriented Programming, skraeno OOP) je novi pristup realizaciji softvera kao modelarealnog sveta. Reavanje problema paradigmom objektnoorijentisanog programiranja, je vrlo slino ljudskom nainu razmiljanja i reavanju problema.Sastoji se od identifikovanja objekata i postavljanje objekata koji e se koristiti uodgovarajuu sekvencu za rijeenje odreenog problema. Strukturnim programiranjem teimo da to realistinije preslikamo (modeliramo, simuliramo) ponaanje nekog sistema.
12

Objektno orijentisano programiranje i jezici Branislav, Rr 02/11

Majki

Objektno orijentisano programiranje predstavlja implementacionu metodu kod koje su programi organizovani kao kooperativni skup objekata pri emu svaki objekat predstavlja instancu neke klase iz hijerarhije klasa nastale na bazi relacija nasleivanja (inheritance). Apstrakcija je pojednostavljena predstava nekog sistema, kreirana tako da naglasi za nas relevantne karakteristike, ignoriui sve nama nebitno. Ona predstavlja jedan odos novnih mehanizama pomou kojih se ljudi bore sa kompleksnim problemima. Uaurivanje predstavlja sledeu bitnu karakteristiku objektno-orijentisanog programiranja. OOP uvodi drugaiji nain razmiljanja u programiranje, i mnogo vie vremena se troi na projektovajne, a manje na samu implementaciju.

13

You might also like