zorglub76: Pristup "knjiga u ruke, pa kucaj primere" je ok, ali moje iskustvo je drugacije.
Sve knjige (narocito o javi) imaju 1200+ strana. Njihovo citanje je korisno samo donekle. Ako krenes da citas od korice do korice, ukapiraces da si za nedelju dana presao 200 strana i da je sve sto znas to da postoje razliciti tipovi podataka i da mozes da napravis klasu "Sisar", a od nje izvedes klasu "Covek". To je lepo, ali vrlo beskorisno. Narocito nakon celonedeljne gnjavaze.
Moji poceci u programiranju su bili takvi. Kasnije sam shvatio da je mnogo korisniji pristup sledeci.
1. Zadaj sebi zadatak (npr. "hocu da napravim web aplikaciju koja ce slati upite o muzici na Last.fm, dobijati rezultate i iscrtavati ih u browseru"). Bitno je sledece:
a. da ti je zadatak interesantan
b. da nije komplikovan (kad na papir stavis procese koje treba da implementiras, ne treba da ih bude vise od 5-6)
2. Nadji na netu tutorijal koji ce ti pomoci da zapocnes projekat (npr. kako da instaliras Eclipse, kako da pokrenes server, gde ide kod, gde slike, kako da izbildujes, kako da posaljes zapakovanu aplikaciju na server...).
3. Podeli svoj projekat na taskove ("treba dovuci podatke sa Last.fm-a", "treba uraditi nesto sa tim podacima", "treba ih poslati u browser").
4. Nadji na netu primer za prvi task (odnosno nesto sto lici na taj task)
5. Iscitaj primer i vidi da li ga razumes
6. Nadji jos nekoliko primera i pokusaj da ih skontas. Iz nekoliko primera ces izvuci neku semu (prvo na serverskoj strani moras da napravis http klijent; pa da mu das url i izvrsis metod kojim ces sa tog url-a da dobijes podatke; na kraju moras da iscitas nekako podatke koje si dobio - ovo su neki koraci koji ce se, na razlicite nacine, pojavljivati u svim primerima).
7. Probaj da na osnovu primera resis svoj task. Neces uspeti.
8. Nadji na netu objasnjenje za stvari koje te koce i koje ne razumes, ili ne razumes potpuno
9. Ako ne nadjes zadovoljavajuce objasnjenje, otvori knjigu. U knjizi ce o toj stvari pisati na 20 stranica.
10. Najzad ces shvatiti o cemu se radi i prvi task ce biti resen.
11. Likuj neko vreme zato sto ti je kod proradio, pohvali se nekom ko je voljan da te slusa, pokazi mu kako radi, pokazi mu kod, uzivaj u tome....
12. Ponovi korake 4-11 za svaki sledeci task.
13. Zavrsio si aplikaciju, svaka cast!
14. Sad je menjaj. Razmisli gde bi mogao da je poboljsas. Iscitaj one primere na koje si nailazio, a koje nisi razumeo. Iscitaj poglavlje iz knjige o oblasti koja ti je pravila probleme.
Kad zavrsis sve ovo, smisli drugi, mozda malo prakticniji projekat (da vise lici na stvari koje sreces na netu - da registrujes korisnika, da mu obezbedis neki sadrzaj u zavisnosti od njegove role, da koristis bazu, da komuniciras pomocu ajaxa itd.). Uskoro ces shvatiti da teorija, koja ti je isprva izgledala suvoparno i besmisleno, sad pocinje da ima smisla i da je, u nekim slucajevima, veoma korisna.
Ovaj nacin ucenja je funkcionisao kod mene i, naravno, o njemu mislim da je savrsen i da svi treba tako da pocinju sa nekim programskim jezikom :)
Nadam se da ces imati koristi od gorenapisanog...