Početnik u objektnom programiranju

poruka: 10
|
čitano: 3.348
|
moderatori: Lazarus Long, XXX-Man, vincimus
1
+/- sve poruke
ravni prikaz
starije poruke gore
5 godina
offline
Početnik u objektnom programiranju

Pozdrav svima,

želio bi pitati o objektnom programiranju,

počeo sam učiti  programirati u javi,

i često sam čuo od drugih da trebam početi usvajati filozofiju objektnog programiranja ili bolje rečeno način razmišljanja,

želio bi pitati za savjet gdje mogu naći neki tutorial kako početi razmišljati na taj način?

ili gdje netko objašnjava tu filozofiju :D

Totalni sam početnik tako da je svaki savjet dobrodošao :)

 
0 0 hvala 0
11 godina
neaktivan
offline
Re: Početnik u objektnom programiranju

Slobodno kreni na Java tutoriale i usvojit ćeš dovoljno objektnog programiranja.

 

Posebno usvajanje filozofije je imalo smisla dok je C geekove trebalo prešaltati na OOP.

7 godina
neaktivan
offline
Re: Početnik u objektnom programiranju

Ne bih se složio, jer se mnogi kunu da znaju što je to polimirfizam, enkapsulacija i apstrakcija. Onda ih pitaš npr. za Dekorator, Factory ili IoC i Dependenci Injection. Ili razliku interfacea i apstraktne klase.  Tada totalno zablokiraju.

16 godina
online
Početnik u objektnom programiranju

Iz mog iskustva, nakon što neko vreme provedeš baveći se OOP-om, mozak ti "klikne" na pravi način: naiđeš na problem i potpuno spontano počneš da razmišljaš o rešenju za njega koje je OOP (umesto da se teraš da napraviš klasu i da u nju nabiješ neko ponašanje i da ti je to neprirodno, kao što bude u početku).

 

Mislim da se za mene glavni pomak desio zahvaljujući knjizi "Design Patterns: Elements of Reusable Object-Oriented Software" (aka gang of four design patterns, lako ju je naći). Inače ne mogu da se pohvalim da čitam puno IT knjiga (čak mislim da mnoge imaju smisla samo kao priručnici, a ne nešto što će se uzeti i pročitati od početka do kraja), ali ova je kratka i jako pitko napisana i, čitajući je, tačno spoznaš zašto OOP ima puno smisla.

WP/WM fanovi, prestanite više lagat ovaj napaćeni narod, nemate to pravo!
Moj PC  
0 0 hvala 0
13 godina
neaktivan
offline
Početnik u objektnom programiranju

Definitivno se ne slažem da je učenje bilo koje paradigme jezika nepotrebno iz jednostavnog razloga: da bi developer učinkovito napisao aplikaciju koja rješava određeni problem on mora da zna kako da efikasno podijeli funkcionalnost na funkcionalne dijelove aplikacije, te da u skladu sa jezičkom paradigmom generiše (napiše) što učinkovitiji kod.
Ako developer ne poznaje paradigmu jezika koji koristi, to će dovesti do veće i slabo organizovane baze koda u kojoj se gotovo nemoguće snaći, što će aplikaciju učiniti jako teškom za održavanje i dalji razvoj. Slažem se sa prethodnim komentarom da nakon nekog vremena "stvari krenu same od sebe", to vrijeme je naravno jako individualno, uglavnom pokušaću vam objasniti nekakve osnove a ostale kompleksnije pojmove ćete usvajati s vremenom.


Objektno orjentisano programiranje kako mu to samo ime kaže počiva na objektima, odnosno kod dijeli na objekte, ti objekti mogu da imaju: svojstva, postupke (metode), i događaje.
Da lakše razumijemo prethodno posmatraćemo razvoj jako jednostavne igre u kojoj možemo da imamo interakciju sa nekim od odabranih ljudskih likova.
Svaki od likova se razlikuje po imenu, izgledu (visina, širina, boji kose, boji odjeće).
Likovi imaju sledeće mogućnosti interakcije: kada ih udarite (pritiskom desnog tastera miša), odabrani lik kaže "Jao", kada ih pozdravite (pritiskom lijevog tastera miša) odabrani kaže: "Zdravo".

U skladu sa objektno orjentisanom paradigmom objekat "Čovjek" se sastoji od:
1. Svojstava: Ime, Širina, Masa, Boja Kose, Boja Odjeće.
2. Metoda: Reci Jao, Reci Zdravo.
3. Događaja: Desni taster miša je pritisnut (poziva se metoda "Reci Jao"), Lijevi taster miša je pritisnut (poziva se metoda "Reci Zdravo").

Sada ćemo u našoj zamišljenoj igri kreirati dva lika:
1. Ime: Marko, Visina: 70px, Širina: 30px, Boja Kose: Crna, Boja Odjeće: Bijela.
2. Ime: Zoran, Visina: 90px, Širina: 40px, Boja Kose: Zelena, Boja Odjeće: Crna.
Svaki od navedena dva lika će imati obje definisane metode ("reci jao", "reci zdravo"),  te oba definisana događaja što je jako bitna osobina u objektno orjentisanoj paradigmi koja nam omogućava da promjenom svojstava jako brzo generišemo veliki broj objekata koji će imati sve definisane metode i događaje.

Nisam siguran koliko je primjer koji sam uzeo dobar za opis navedene teme, ali nadam se da sam vam bar malo pomogao. Za bolje i detaljnije objašnjenje o objektima i objektno orjentisane programiranju potražite navedeno na YouTube-u, naravno preporuka su tutorijali na engleskom jeziku ako ga poznajete naravno.

 
3 0 hvala 1
5 godina
offline
Početnik u objektnom programiranju

Hvala na pomoći, budem na youtube pogledao

@Boky Milanovic hvala ti na objašnjenju pomoglo mi je da shvatim neke stvari

Krećem s tipkanjem :) tj učenjem

Poruka je uređivana zadnji put sri 26.9.2018 19:14 (Mr. Smajli).
 
0 0 hvala 0
10 godina
offline
Početnik u objektnom programiranju

Za Java-u, kada se već ufurašu istu(ako, ne odmah), slobodno uzmi predavanja i knjigu od Marka Čupića za učenje.

Panzerkampfwagen.Dinamo Zagreb.Matija.Leaving or dead, always ahead...
Moj PC  
0 0 hvala 0
10 godina
neaktivan
offline
Re: Početnik u objektnom programiranju
Imate na umu neki poseban tutorijal? I predlažete li neki tečaj, bilo on ili off line (ako je off, poželjno je da se izvodi u varaždinu, npr algebra i sl.)? Nešto za potpunog početnika, hvala.
Moj PC  
0 0 hvala 0
7 godina
neaktivan
offline
Početnik u objektnom programiranju

Googlaj "Design Patterns: Elements of Reusable Object-Oriented Software" i kreni s proučavanjem. Za svaki pattern možeš pronaći na 10tke implementacija u bilo kojem OO jeziku.

 
0 0 hvala 0
12 godina
offline
Re: Početnik u objektnom programiranju
andrijam kaže...

Googlaj "Design Patterns: Elements of Reusable Object-Oriented Software" i kreni s proučavanjem. Za svaki pattern možeš pronaći na 10tke implementacija u bilo kojem OO jeziku.

Zašto odmah krenuti na oblikovne obrasce kada čovjek vjerojatno nije ni čuo za klase, sučelja, nasljeđivanje, kompoziciju, enkapsulaciju, objekte, SOLID principe, itd.?

Općenito, oblikovne obrasce je korisno učiti jednom kada je osoba već stekla neko iskustvo u odabranoj programskoj paradigmi (postoje obrasci i za proceduralne kao i funkcijske jezike, ne samo objektno-orijentirane) da ne bi odjednom došlo do toga da je sve čavao - YAGNI je dobra stvar u softveru, također ;)

 

Preporučena knjiga (popularno "gang of four book") je definitivno jedna od najjačih u razvoju softvera i kao takva klasik, ali nije namijenjena za početnike, imho.

Osobno, probao bih sa nekom odavde. Sretno!

0100011001000001010100000010000000110100001000000100110001001001010001100100010100100001
Poruka je uređivana zadnji put čet 11.10.2018 20:53 (pr0n_addict).
1
Nova poruka
E-mail:
Lozinka:
 
vrh stranice