Šta je novo?

Objektno-orijentisano programiranje

Šta si sad rekao? Prvo ne treba učiti redom neko samo šta ti treba, a onda "Naucis C++ i na konju si. Nije nego."
Uz dužno poštovanje, jel si ti prvo naučio jezik u kome sad radiš, ili si krenuo redom od asemblera i bejzika za spektrum i komodor? I jel sad zarađuješ dobro? Zašto onda odvraćaš ljude od učenja ispočetka? Šta će mu faliti ako nauči redom? I po fakultetima se uči pun q... kojekakvih gluposti koje u većini slučajeva neće trebati u životu i radu, šta fali odvojiti dodatnih par meseci i posle reći "e super, znam i C i C++"?
To me nervira što se danas sve gleda kroz pare, programiranje je nekada bila pasija geekova koji nisu žalili dioptrije da bi videli svojih ruku delo na starom televizoru, a danas se sve uči namenski, ljudi koji to inače nikad ne bi pipnuli čuli da je tu kinta pa ajmo (ne mislim na autora topica)... možete reći da sam lud, al ja mislim tako i nikako drugačije :)
 
Poslednja izmena:
Voodoo_NBGD je napisao(la):
Uz dužno poštovanje, jel si ti prvo naučio jezik u kome sad radiš, ili si krenuo redom od asemblera i bejzika za spektrum i komodor? I jel sad zarađuješ dobro? Zašto onda odvraćaš ljude od učenja ispočetka? Šta će mu faliti ako nauči redom? I po fakultetima se uči pun q... kojekakvih gluposti koje u većini slučajeva neće trebati u životu i radu, šta fali odvojiti dodatnih par meseci i posle reći "e super, znam i C i C++"?
To me nervira što se danas sve gleda kroz pare, programiranje je nekada bila pasija geekova koji nisu žalili dioptrije da bi videli svojih ruku delo na starom televizoru, a danas se sve uči namenski, ljudi koji to inače nikad ne bi pipnuli čuli da je tu kinta pa ajmo (ne mislim na autora topica)... možete reći da sam lud, al ja mislim tako i nikako drugačije :)
Ja ne znam dal je ijedan programer (koji nije počeo da se bavi programiranjem 50tih godina) počeo tako što je prvo učio asembler...
Ako je neko počinjao time da se bavi u vreme kad su bili aktuelni Spektrumi i Komodori naravno da je učio i koristio jezike iz tog vremena. Šta je drugo mogao da uči?
Tehnologija napreduje... Treba koristiti taj napredak. Da li anesteziolog treba da zna od kog bilja iz prašume se može napraviti anestetik?
Čovek koji sada počinje da se bavi programiranjem prvo treba da stekne neka najosnovnija znanja iz proceduralnog prograiranja i to potpuno nevezano od jezika i posle toga što pre da se baci na OO (opet nebitno koji jezik... kad naučiš da razmiljšaš na taj način prelazak između jezika je relativno bezbolan).
A i to sa geekovima... Znači onaj kome je programiranje pasija mora da krene od assemblera na krš televizoru, jerbo ako kojim slučajem počne na TFT monitoru u C++u ili ne daj Bože u Javi ili C# to automatski znači da se time bavi jer je "čuo da tu ima para"...

A što se nostalgičara tiče... evo vam lista pa izaberite odakle ćete da krenete :eyebrows:
http://www.levenez.com/lang/history.html#04
 
Voodoo_NBGD je napisao(la):
Šta si sad rekao? Prvo ne treba učiti redom neko samo šta ti treba, a onda "Naucis C++ i na konju si. Nije nego."

Ti i dalje ne razumes izgleda sta sam rekao. Probaj jos jednom sa pasusom gde se pominje "cilj ucenja programerskog zadatka nije nauciti neki jezik, nego nauciti programirati".
Prvo, ja nisam rekao decku da uci "samo ono sta mu treba", jer on ocigledno jos uvek ne zna sta mu treba (a izgleda da nije ni jedini). Ono sta jesam rekao je to da ne smatra da ako nauci c++ kao jezik da je zavrsio posao, jer ucenje jezika nije samo po sebi cilj. A upravo to izgleda zakljucak svog ovog nadglasavanja u topiku "uzmi ovaj, uzmi onaj jezik". To sto ce savladati sintaksu jezika ga nece nauciti da programerske probleme resava, da nalazi nacine da stvari optimizuje, planira, itd. Ima jos milion stvari da nauci pored ucenja nekog od jezika i ucenje nekoliko jezika za redom samo zato sto je "lepo da zna jos i ovaj jezik, jos i onaj" je naprosto gubljenje vremena i resursa. Treba da se koncentrise na srz osnova programerskog znanja uz neki od jezika (kao alata), a ne na skupljanje jezika, jer nece raditi kao prevodilac.

Voodoo_NBGD je napisao(la):
Uz dužno poštovanje, jel si ti prvo naučio jezik u kome sad radiš, ili si krenuo redom od asemblera i bejzika za spektrum i komodor? I jel sad zarađuješ dobro? Zašto onda odvraćaš ljude od učenja ispočetka?

Uz duzno postovanje, ovakvim pitanjem pokazujes opasne rupe ili u svom znanju ili u svojoj logici.
Ja kada sam ucio programiranje radio sam na bejziku odnosno assembleru na tom C64. Zasto? Ne zato sto je trebalo da "krenem od pocetka", nego zato sto tada nicega drugog nije bilo dostupno (osim po racunskim centrima gde nije bilo pristupa). Ja (i moji vrsnjaci) nismo imali izbora, danas pocetnici imaju izbor. Kako smo mi rasli i sazrevali, tako su se pojavljivali novi jezici u praksi. Tacke "pocetka" osamdesetih i danas nisu i ne mogu biti iste. Tako da odvracam ljude od prelazenja mukotrpnog puta da bih im ushparao vreme i nepotrebnu muku. To je kao kada bi sad nekome ko uci da vozi preporucio da prvo kupi ficu, pa tristaca, pa stojadina, pa juga (cisto da stekne osecaj kako je to islo nekad ispocetka) i na kraju da uzme neka aktuelna kola.

Voodoo_NBGD je napisao(la):
I po fakultetima se uči pun q... kojekakvih gluposti koje u većini slučajeva neće trebati u životu i radu, šta fali odvojiti dodatnih par meseci i posle reći "e super, znam i C i C++"?

Ma da, sto ne nauci i Algol, Modulu2, Lisp, php, Javu... pa posle moze reci "e super, znam i ...."? Mislim, na fakultetu se ionako uci gomila gluposti, pa hajde na dodamo odozgo jos jednu.
Prvo, C i C++ su dva odvojena, razlicita jezika. Vec sam na ovom forumu x puta video kako se tvrdi recimo da je C++ objektno prosirenje C-a, sto predstavlja elementarno neznanje (bilo ko ko je stvarno procitao tog Strustrupa ne bi tako nesto rekao). Drugo, sintaksne elemente koji obelezavaju C (strukture, petlje, itd) ce ionako nauciti uceci C++. Trece, ima x slucajeva gde iste sintaksne strukture imaju razlicito semanticko znacenje u C-u i C++u; da li je pametno pocetnika opterecivati takvim stvarima? Cetvrto, C se danas daleko manje koristi nego nekad, a neizbezan je u svega nekoliko oblasti - nesto i ne vidim da je iko pitao uopste ista oko oblasti kojima bi se covek bavio. Mislim, u cemu je neophodnost ucenja C-a danas po tebi? Cisto zbog toga da moze da kaze "znam i to"?!?
Sve u svemu, kao sto sam gore vec naveo, u ovom stadijumu ucenja u kojem se decko nalazi, smatram da tih "dodatnih nekoliko meseci" moze mnogo pametnije da investira - recimo u proucavanju nekog od frameworkova sa kojim bi radio, API-ja ili neceg slicnog, a sto ne predstavlja ucenje jos jednog jezika.

Voodoo_NBGD je napisao(la):
To me nervira što se danas sve gleda kroz pare, programiranje je nekada bila pasija geekova koji nisu žalili dioptrije da bi videli svojih ruku delo na starom televizoru, a danas se sve uči namenski, ljudi koji to inače nikad ne bi pipnuli čuli da je tu kinta pa ajmo (ne mislim na autora topica)... možete reći da sam lud, al ja mislim tako i nikako drugačije :)

E, pliz, nemoj "o dobrim starim vremenima", jer i sam znas koliko si imao godina kada su ljudi radi bilo sta "na starom televizoru", tako da sumnjam da znas iz prve ruke sta je bilo programiranje tada ljudima licno. Pasija geekova u svakom slucaju nije bila, bar ne tako kako je ti zamisljas. Programiranje je predstavljalo fasciniranost u fazi ucenja dok si bio jos mlad i stalno pomerao granice, ali sve to na putu na kojem si se trudio da postanes pravi programer. Ili hoces da kazes da je nekada neko ulupao silne godine u savladjivanje progamiranja da bi radili nesto samo za svoju dusu?!? Tja, ja ne znam nijednog takvog coveka, znas li ti?
I to za pominjanje kinte si totalno pogresno shvatio; uopste se ne radi o tome da se ne pipa posao ako se ne radi o kinti. Kad sam pomenuo pare, ucinio sam to zbog vrlo konkretnog razloga. Iz istog razloga zasto te firma pri zaposlenju pita kakvo si komercijalno iskustvo imao do tog momenta. Ako stvar koju si radio ima neku komercijalnu vrednost, znaci da ima i neku upotrebnu vrednost. Drugim recima, ako ima neko ko hoce da plati za tvoj rad, onda je to nesumnjivo potvrda da radis neke stvari kako treba.
Ovde je ista prica kao i sa hardverom - momak sklopi nekoliko masina i odmah smatra sebe magom za hardver. Tako i kod programiranja; ljudi naprave par seminarskih radova, par programcica/demoa za svoju dusu, mozda i za komsiju i njegov video klub ili nesto slicno i odmah su najveci strucnjaci za programiranje. Kao i obicno, na teoriji smo svi jaki, ali za prakticne savete je ponekad potrebno malo vise godina iskustva u komercijalnoj areni. Zasto? Pa zato sto te tu tempo i dinamika rada, menjanje alata, platformi i biblioteka tera da skupo placas svoje greske u razmisljanju. Sa druge strane, dok si jos uvek na nivou da smisao programiranja idealizujes kao "pasiju geekova", mozes slobodno da filozofiras, pa ako se i zeznes - tja, nikom nista. Neke stvari o kojima smo ovde pricali jednostavno nisu stvar misljenja, nego su ispravne ili neispravne.


U tom smislu, povuci cu (nadam se poslednji put u ovom topiku) paralelu sa hw delom foruma; tamo sam nekoliko puta morao da napomenem ljudima koji pozure da savetuju nekome kupovinu "nemojte se igrati sa takvim stvarima, ljudi su tesko skupili kintu da kupe nesto, savetujte jedino ako ste apsolutno sigurni". Tako izgleda moram i ovde - "nemojte se igrati sa vremenom i planovima ljudi". To su dugorocni planovi; neka neko krene pogresno savetovanim putem i smori se i na kraju batali sve ovo. Zbog cega, necijeg mudrovanja? (generalna opaska, upucena svima)

Dakle:
- nemojte pocetnicima davati pogresan utisak da se ucenje svodi na izbor jezika. Uciti programirati nije isto sto i uciti jezik.
- nemojte pocetnicima davati pogresan utisak da ako nauce C++ da su zavrsili s poslom. C++ nece programirati umesto njih. Savladjivanje samog jezika je mozda desetina posla koji ih ocekuje, a samo ucenje se nikad ne zavrsava.
- jezik je samo alat; ne pasuje svaki alat za svaku primenu i za svakog coveka. Cilj je obaviti posao, a ne koristiti alat. Kinjiti nekoga zato sto radi u VB-u ili php-u, a ne C++u je blago receno seljacki.


BTW, sto ovakva navala ne postoji kod konkretnih pitanja na ovom podforumu, nego samo kod teoretisanja?
 
Poslednja izmena:
Zezn'o si me u svim argumentima, odlazim iz rasprave pokriven ušima :)
 
Ono sto me ipak najvise interesuje jeste Objektno-orijentisan koncept u programiranju i programi koji to podrzavaju...medjutim, kao sto je silverglider primetio svi predlazi prvo C, a zatim C++ (ne znam zasto)!

Ipak je bolje kad neko uci da vozi na Yugu zato da ne bi "poleteo" i vozio nenormalno mecku od 80 hiljada koju mu je cale kupio za 18 rodjendan (kao mom drugaru).
Ali, ipak diskutabilno je sa cim je bolje poceti...evo na primer, naucio sam da vozim kola u Yugu, ali je moj prvi komp bio Lap-Top...

Posto razmisljam da konacno ucim OOP i neki od programa takve vrste, moj problem se svodi na to da li da ucim sam (kao sto sam za kola ucio bez auto-skole) ili je to toliko tesko (kao voznja aviona) da bi mi bila neophodna avio-skola...oops..racunaski fax (www.raf.edu.yu), na primer-:)
 
Poenta je u tome da C, C++ i C# imaju jako slicnu sintaksu (u mnogim stvarima istu), al' je logika programiranja drugacija...

Ti ces tu sintaksu kako god se okrene morati dobro da savladas. ;)
 
SS, ako zelis da se bavis programiranjem, tj. da imas to kao profesiju, ne mozes da cekas fakultet da bi sa ucenjem zapoceo. Kad dodjes do fakulteta neka predznanja moras da imas. A sa druge strane, o kvalitetu sadrzaja na nasim IT univerzitetima moze da se diskutuje unedogled. Nece ni taj fakultet uspeti da ti prenese sva znanja - bez sopstvenog zapinjanja nema nista. Moras da krenes sam (ako to vec nemas u skoli).

Kada su se pominjale oblasti koje te interesuju mislilo se na ciljnu vrstu aplikacija koje bi radio. Koncept objektno orijentisanog programiranja se koristi u mnogim primenama. Dakle, mislio se na web programiranje, graficki orijentisane aplikacije i igre, nesto vise oko baza podataka, poslovni softver, itd. Da imas nesto tako vrlo konkretno na umu, mogle bi neke stvari da se precrtaju, a neke i konkretizuju oko preporuke oblasti, jezika i slicno. Recimo, za web programiranje se generalno ne bi bas proslavio C++om, kao sto se ne bi preterano ovajdio Javom u izradi igara. Posto izgleda jos uvek nemas predstavu ili ne mozes da se odlucis na ovom stepenu, moras da savladas neke uopstene osnove (koje ti ni inace ne ginu). Negde na tom putu ce ti valjda sinuti sta te vise interesuje.

Generalno, danas vise ne postoje univerzalni programeri koji znaju sve. Stvari su se toliko razgranale da je zivot jednostavno prekratak da se sve nauci i u svemu radi. Ali osnove i uvod u neke stvari je neophodno imati, jer se makar koncept koristi u vise polja. Na primer, ako se i budes jednog dana bavio izradom igara, moras da imas osnove znanja o tome kako baze funkcionisu; te silne nivoe, likove i ostalo treba nekako organizovati i negde snimiti (ne u relacionu bazu, ali opet). Po mom misljenju treba ti:

- materijal oko osnova objektnog programiranja; u zavisnosti od toga koliko mozes da "svaris", moze i drugi OO materijal (oo-dizajn, oo-analiza, itd), ali nije neohodno u pocetku
- materijal oko struktura podataka (ima i na srpskom, mozes naci nezavisnu literaturu ili slobodno neku fakultetsku)
- materijal oko algoritama, osnovni nivo
- materijal koji objasnjava jezik koji ces koristiti u procesu ucenja

Oko ovog poslednjeg par napomena. Mozes da krenes sa C++om. Ali, za pocetak da se ne vezes ni za jednu specijalnu verziju (Microsoft, Borland, Intel, Gnu, itd), nego da se pozabavis ANSI/ISO C++om za ucenje osnova. ANSI/ISO je standard i sve prethodno navedene firme moraju da prave svoje verzije kompatibilne sa tim standardom (sto znaci da ono sta je prikazano njime mora da radi u svakom aktuelnom C++u, na svakom operativnom sistemu, itd). Razlog - jedan npr. MS Visual C++ ima jos tone i tone drugih stvari koje ce ti odvlaciti paznju. Za osnove - ANSI/ISO C++ (ima dosta literature koja se bavi ANSI/ISO C++om). Kada savladas osnove OOP-a, mozes da odes korak dalje i nabavis literaturu za konkretnog vendora (MS, Borland, itd), kao i da pogledas oko sebe aktuelne framworkove. Jedan kompleksni framework moze da ti oduzme vise vremena nego ucenje jezika.

Ako ti je C++ suvise tezak i nerazumljiv, stavi ga privremeno na led i probaj nesto drugo dok ne savladas te osnove sa nekim tebi razumljivijim jezikom. Bilo bi glupo da batalis sve zbog kontakta sa jezikom koji ti ne lezi na prvu loptu. Kada savladas osnove, mozes da mu se vratis i koncentrises se na njega, jer tada vec znas kako OOP funkcionise i sta da ocekujes.

P.S.
Uciti "sam" ne znaci izolaciju. Pored knjiga imas internet, gomilu foruma, itd. Pitaj da ti se objasni sta ti u literaturi nije jasno.
 
Objekt orijentisano programiranje i njegovo izucavanje i usavrsavanje na pocetku
po mome mishljenju nema nikakve veze sa bilo kakvom sintaksom tu se slazem u potpunosti sa Silver'om

Pojasnjavanje teorije nasledjivanje , agregacija , polimorfija , event handling , objektorijentisana analiza bi trebali da butu prvi teoretski koraci u tom pravcu.

Kad govorimo o modernom Software Inzinjeringu onda ne smije nikago da se izbjegne ili uskrati faza dizajna , i modeliranja aplikacije. Finalno programiranje odnosno zavrsna faza moze biti realizovana u bilo kom objektorijentisanom jeziku. Razlike izmedju istih su po konceptima gore navedenih tehnika veoma male evo recimo C++ podrzava visestrano nasledjivanje dok Java ne podrzava.

To se moze simbolicki uporediti sa sledecim : Nije vazno na koji jezik si nesto rekao , vazan je sadrzaj tvoje izjave

Ipak postoje odredjene namjene gdje je jedan ili drugi jezik prilagodniji ali to ne menja nista na cinjenici da je analiza , koncepcija , dizajn ono sto u svakom slucaju prvo mora da slijedi.
 
Poslednja izmena:
silverglider je napisao(la):
... ako zelis da se bavis programiranjem, tj. da imas to kao profesiju, ne mozes da cekas fakultet...


Apsolutna istina, ovo treba masnim slovima istaci.
Sad kad pogledam unazad, sve sto sam naucio od onoga cime zaradjujem za leba naucio sam slucajno ili sam. Sve skole i diplome su dosle na kraju kad vishe nisu bile nishta do cista formalnost.

A, kad smo vec kod savetovanja evo shta bi aj predlozio:

- kreni sa cistim objektnim jezikom - Java-om,
ako ti to bude strano batali i nastavi zivot daleko od programiranja, znaci odmah usteda u vremenu :)

- zatim predji na .net-ov C# da upoznash filozozofiju MS alata

- dalje radi prema svojim afinitetima i prema potrebama ako pronadjes neki posao, ali samo ovlash proucavaj C i C++, ionako se kod nas sve manje trazi i u buducnosti nece biti vece potraznje.
 
Poslednja izmena:
Hehe, ovaj thread bi svakako trebalo da se zove "Silver protiv svih" :d .
Sorry za upadicu ali stvarno nisam mogao da odolim. Pratim ga od početka i sumnjam da je dečku stvar išta jasnija nego na početku.

Da nebi bio totalni offtopic.
Solidna zmijo,
Jedina stvar o kojoj treba razmišljati je šta te interesuje. Šta ti to srce ište i prema čemu imaš afinitet, odnosno šta je to što misliš da ćeš raditi sa najviše elana. Kad to izkristališeš, znaćeš kuda dalje. ;)
 
silverglider je napisao(la):
...ako zelis da se bavis programiranjem, tj. da imas to kao profesiju, ne mozes da cekas fakultet da bi sa ucenjem zapoceo. Kad dodjes do fakulteta neka predznanja moras da imas.

Aha, znaci moracu kao kad smo u drugoj godini ucili pravljenje sajtova u frontpage-u, a ja vec napravio sajt u flash-u...moracu tako i sa programiranjem! Pa jeste, u pravu si, niko me nece nauciti odlicno neki program, moram ponajvise sam da radim na tome!!!

silverglider je napisao(la):
Kada su se pominjale oblasti koje te interesuju mislilo se na ciljnu vrstu aplikacija koje bi radio. Koncept objektno orijentisanog programiranja se koristi u mnogim primenama. Dakle, mislio se na web programiranje, graficki orijentisane aplikacije i igre, nesto vise oko baza podataka, poslovni softver, itd.

Shvatio sam ja na sta se mislilo, nego sam svesno izbegao odgovor jer me za sada interesuje SVE, i ne mogu jos ni za sta da se odlucim (mislim da je to ipak najbolje...ili mozda nije?!)!
Potpuno mi je jasno i to koji programski jezik ima koju namenu itd...

Kad smo kod OOP, na primer, nije mi jasno zasto se ovaj koncept ne uci u sredjim skolama (gimn...), a i ovo sto se uci je toliko usko da sa tim nemamo prakticno nista! Npr, IF naredba je dobila citavo jedno poglavlja, a da ne pricam za naredbe Read i Write (mislim na Pascal)... Da ne pominjem Word, koji se uci celo polugodiste!!! :smoke:
 
Pa znas kako Word se uci celo polugodiste, a pola Srbije se i dalje plasi da upali racunar... I to ne samo matorci znam gomilu ljudi do 20 godina koji se jeze od pomisli da nesto rade na kompu pa cak i da kucaju (osim kauntera u igraonicama)
Po meni nema neke velike potrebe uciti ljude programiranju u opstim srednjim skolama, ovo sto se radi moze samo za cilj da ima nekevu demistifikaciju, nista vise..
A npr. u matematickoj uce C++ itekako...
Mislim tesko je nekom objasnjavati oop, kad posle 2 ili 3 godine i dalje nisu sigurni za read i write "koji je koji..."
Ako planiras neki IT fax, slobodno kreni sa Javom (po meni je najlaksa), posle ces tamo nauciti osnove drugih stvari...
 
Sollid Sn@ke je napisao(la):
Kad smo kod OOP, na primer, nije mi jasno zasto se ovaj koncept ne uci u sredjim skolama (gimn...), a i ovo sto se uci je toliko usko da sa tim nemamo prakticno nista! Npr, IF naredba je dobila citavo jedno poglavlja, a da ne pricam za naredbe Read i Write (mislim na Pascal)... Da ne pominjem Word, koji se uci celo polugodiste!!! :smoke:
Ko što reče Goxy, zato što 90% učenika ne kapira ni najjednostavnije linearne programe... kako ti nekoj devojci koja čita "Lepotu i zdravlje" objasniti uopšte svrhu "tog programiranja ili kako već"? A i ona treba da prođe razred s pozitivnom ocenom...
Elem, ja sam imao sreću da zapadnem kod profesorke koja sa strane predaje na VETŠ, tako da smo paskal razvalili za sve pare... ali recimo druga odeljenja nisu odmakla dalje od računanja površine pravougaonika...
 
Ja moram jos jednom da se ubacim, da bih rezimirao svoje stavove.

(Ako neko pronadje svoje recenice u ovim stavovima, da zna da ne narusavam autorska prava :) )

1. Ljudi su rekli na ovom forumu (sa kojima se ne slazem):
--->"Treba da ucis od pocetka"
-Kakvo CRNO ucenje prgramiranja od pocetka, sve po redu??? (ja sam ucio po FIFO principu, a ti?) :)

--->"Treba da definises svoje afinitete"
-A kako da ih definise kada covek ne zna OOP, a ni kakve mogucnosti pruza??? Ne zna ni cime ce raditi, kojim alatom.



2. Drugi ljudi su rekli, medju njima sam i ja:

--->"Nauci prvo smisao, semantiku"
-Vazno je da covek PRVO nauci semantiku! Vazno je da pocne da razmislja programerski. Svaki iole bolji programer ce reci da je najvaznije ideja, arhitektura (kako kaze nas narod PATTERN-i :) ), i to je ono o cemu ce svaki iskusni "lisac" od programera da te posavetuje. KUCKANJE KODA I PROGRAMIRANJE je NAJLAKSI deo posla.

---?"kasnije ces se prebacivati sa alata na alat, sa okruzenja na okruzenje, sa jezika na jezik, veoma jednostavno i sa malo truda"
-Ovde je sve jasno.



Sto se tice C-a i C++ -a.To u DOBRI jezici. ALI, mislim da je malo stvari koje bih ja pre uradio sa njima, nego C#-om ili Javom. Pa i C# ima unsafe mod, u kome se spustis veom nisko i radis sta ti dusa pozeli. A mozda ce (posle 10 godina programiranja da pozeli da uradi nesto u C++, ne zato sto hoce vec zato sto mora jer je konacno dosao do tog nivoa znanja da mu ostali jezici ne pomazu)


A ti SolidSnake-u, uci programiranje pre fakulteta, jer ako cekas na fakultetsko znanje, nikada ga neces docekati. Pa i na bilo kom fakultetu ces morati sam da ucis! Ucio sada, ili kasnije sam, isto ti se 'vata.

Prvi savet. Citaj neke knjizice koje se zovu "strukturno programiranje", "objektno orijentisano programiranje", "Algoritmi", "kako da usavrsim kod", ili tako nesto, jer u njima uvek ima istine.

Drugi savet. Knjige koje bazirane, tj. opisuju neki programski jezik, nemoj da citas kao bibliju. Nego ih prelazi brzo, ali dosta, dosta vezbaj, i vrlo brzo ces uvideti da si programer. :)

Pozdrav svima!
 
silverglider je napisao(la):
Jeste li primetili vec preovladjujuc pattern odgovora na ovom forumu?

HW: "Imam problem sa xxxxxx, sta da radim?" - "Prodaj to i kupi yyyyyy"

SW: "Imam problem sa xxxxxx, kako da podesim zzzzzz opciju?" - "Deinstaliraj, xxxxx je sr*nje i instaliraj yyyyy - pre toga formatiraj disk i reinstaliraj sistem!"

PROG: "Kako da uradim xxxxx u zzzz jeziku?" - "Zasto u xxxxxx kad mozes u yyyyyy? Ako planiras da budes wwwwww, onda je najbolje da naucis prvo ova dva-tri jezika, pa ako budes tada hteo, da se vratis na ovo o cemu si pitao."

Niko bre da na konkretno pitanje odgovori konkretno, sve nekakve zamene, supstituti i kopernikanski zaokreti ponudjeni.

Potpisujem ovo!!!

Ovo je za signature :D:D:D

silverglider je napisao(la):
Vrlo je lako za shvatiti kakve atribute i metode (treba da) ima jedan button ili window.

Pa... ako se uzme u obzir da je button zapravo window... sto da ne ali to ne objasnjava neke druge stvari koje su po meni vrlo bitne.

Na primer, cesta greska kod ljudi koji uce OOP je da pogresno skontaju da neka dva objekta mogu biti izvedeni iz iste klase jer im se cine dovoljno slicni. Klasican primer je elipsa i krug. I jedno i drugo je naizgled shape (oblik), ali krug ne moze imati razlicite poluprecnike kao elipsa. Ili drugi primer je automobil i podmornica, i jedno i drugo je vehicle (vozilo), ali podmornica se ne moze parkirati na parking, a ako je nuklearna ne bi bilo pametno otvarati poklopac za gorivo :D
 
@NikName:

Ako je covek objekat, i ako definises klasu ljudi zasto njihova deca po defaultu imaju ukljucen polimorfizam? :D

Ljudi nisu bas dobra analogija za objekte i klase.
 
Evo i sta ja smatram kljucnim osobinama za dobrog programera:

1. Zdrav razum

Da bi mogao da razmisljas i ostanes skoncentrisan.

2. Logika

Za resavanje problema.

3. Inteligencija

Da budes samostalan, razumes sta su drugi uradili, analiziras i vidis prilike za poboljsanja.

4. Znanje o platformi za koju pises

Da bi mogao da je iskoristis na sto efikasniji nacin.

Naravno, poznavanje nekog programskog jezika se podrazumeva :D
 
Vrh Dno