[SAVJET] Sto bi mi bilo isplativije u vezi ucenja PHP-a od nule?

Trebao bih zapravo savjet jedan.

Kako mi bude znanje istog trebalo prije ili poslije… sto se po vama vise isplati od ovoga?

1. Dat 5-6 soma kuna u nekom od nasih IT ucilista (tocnije program: Programer Internet aplikacija - PHP i MySQL)

http://www.algebra.hr/stranice/edukacija/program_obrazovanja.aspx?sifra=39

ili

2. Kupit recimo poprilicno jefitniji dvd za 150 dolara i ucit sam kod kuce?

http://www.lynda.com/tutorial/435?srchtrk=index%3A7%0Alinktypeid%3A2%0Aq%3Aphp%0Apage%3A1%0As%3Arelevance%0Asa%3Atrue%0Aproducttypeid%3A2

Ima li tko od vas tu da je prosao program za PHP programera u Algebri ili negdje drugdje? Kakva su vam iskustva?

Lynda tutoriali su sasvim ok i bolja opcija nego algebra po meni, ako si iti malo vican engleskom jeziku neces imati problema. Ali ja prije svega bi ti posavjetovao da ipak probas uzeti neku smisleniju knjigu sa PHP-om.

Ja sam, recimo, kupio “Kako upotrijebiti PHP i MySQL” od Mikro knjige

Ako želiš Lynda DVD poslo sam ti pm što će ti biti najjeftinije :)) Inače i ja mislim da bi neka knjiga bila ok, čisto zato jer je na HR pa će ti biti lakše, osim ako perfektno znaš engleski…

je da su na srpskom, ali su odlicne knjige…

http://shop.poslovni.hr/php-i-mysql—sadrzi-cd—razvoj-aplikacija-za-web—4-izdanje-112692.aspx

http://www.profil.hr/knjiga/php-i-mysql/27202/

ova je na hrvatskom, al je nebi preporucija
http://www.profil.hr/knjiga/programiranje-php/7555/

Ja sam počeo učiti po ovoj knjizi :

http://www.profil.hr/knjiga/php-i-mysql/27202/

I super je za početnike. Al nažalost sam odustao od PHP-a jer sam skužio da se moram odreči alkohola i žena što mi se nije sviđalo :lula:

Preporučio bih ti da, ukoliko ne znaš dobro engleski, naučiš. Količina informacija na engleskom je mnogostruko veća od one na našem.

Nadalje, najbolja sredstva za učenje će ti biti PHP function reference (
http://www.php.net/manual/en/
) i neki jednostavni PHP framework (npr. CodeIgniter) kako bi naučio kako pravilno pisati kod.

+1 za codeigniter! :slight_smile:

Ma +555 za Codeigniter, ali koji će mu tuki CI kad čovjek nema osnove osnova, a kamoli poznavanje OO-a, dizajna aplikacija, logike programiranja, poznavanje sintakse itd.

Neko spomene tu PHP manula i to je the only way to go, a prije svega ja bih preporučio bilo kakvu knjigu koja uopće uvodi osobu u svijet programiranja, pa tek onda neke konkretne tehnologije ili programske jezike.

http://php.com.hr/vodic

za početak sasvim dosta…

kad prođeš kroz cijeli vodić zadaj si neki zadatak i probaj ga riješit. ako nemožeš sam, traži tu i poći ćemo ti. kako ćeš rješavati zadatake tako ćeš nailazit na probleme i guglat rješenja, a samim time i učit kompliciranije stvari. IMO nema bolje škole nego kad sam probaš nešto napraviti

Na žalost, @orca se nije izjasnio kako stoji s bilo kakvim programiranjem.

Ako nije programer “u duši”, nema tog tečaja niti te knjige koja će od njega napraviti programera.

Hvala puno svima na savjetima i linkovima…

@trnac - programirao nikad u zivotu nisam… zapravo ak cu bit iskren, ono prvo sta me usmjerilo prema php-u je da ako nista moram naucit barem djelic radi klasicnih web formi i sl. gluposti, ono neki minimum znaci, vjerojatno mnogima ovdje nista posebno (nije da planiram sad tu izbacivat neke homemade kompleksne aplikacije i slicno :smiley: )… doduse, ako ima i u mojoj dusi malo programera haha… kako bi se to u narodu reklo, alat 4 life jel, nemoze odmoc …

Ako ces za forme i opcenito, upoznaj malo $_POST i $_GET, takodjer preporucio bih ti da prodjes barem neke osnove tipa arrays.

[quote=“CreatifCode”]Ma +555 za Codeigniter, ali koji će mu tuki CI kad čovjek nema osnove osnova, a kamoli poznavanje OO-a, dizajna aplikacija, logike programiranja, poznavanje sintakse itd.
[/quote]

Da zna pisati kvalitetni kod a ne raditi špagete. Jedan od najboljih načina učenja je imitacija a za to je CodeIngiter idealan.

O aman vise sa (baj d vej pise se codeigniter) “codeingiterima” i ++++1000000000 za neki frejmwork mislim pobogu kao da je topla voda. Nije niti jedan MVC framework bogom dan za web i programiranje niti je MVC jedini i najbolji nacin za web development.
Postoje stotine frejmworka za php i svaki od njih nesto svoje ima, neko voli kohanu, neko zend, neko babemireMVCfrejmork stvar je ukusa. Nece, uzalud mislite tako, niti jedan framework od vas napraviti PHP gurua koji ne radi spageti kod.

Ja svaki dan radim te iste spagete, za sitne stvari, skripte, parsere i sl. trebaju mi, jednostavniji su, brzi su ama sta god. Nisu spagete lose zato sto su spagete lose su zato sto je programer los koji ih pise.

Cilj imitacije je da se novi programer upozna sa konceptima i shvati što je dobar kod a što ne. U suprotnom se događa da programer radi stvari pogrešno ne zbog ajkavosti već zato što uopće nema pojma da postoji bolji način.

Vidim da imaš nekakvu averziju prema CodeIgniteru. Koji bi ti framework predložio početniku?

[quote=""]
Ja svaki dan radim te iste spagete, za sitne stvari, skripte, parsere i sl. trebaju mi, jednostavniji su, brzi su ama sta god. Nisu spagete lose zato sto su spagete lose su zato sto je programer los koji ih pise.[/quote]

Super za tebe. Nadam se da ostavljaš i kontakt podatke u tom kodu kako bi te onaj koji dođe poslije tebe mogao kontaktirati. Radi pojašnjenja koda naravno, ne zato da bi te u gluho doba noći zatukao sjekirom jer si mu ostavio čušpajz koji on onda mora održavati :lula:

[quote=“voajer”]Cilj imitacije je da se novi programer upozna sa konceptima i shvati što je dobar kod a što ne. U suprotnom se događa da programer radi stvari pogrešno ne zbog ajkavosti već zato što uopće nema pojma da postoji bolji način.

Vidim da imaš nekakvu averziju prema CodeIgniteru. Koji bi ti framework predložio početniku?[/quote]

Iako je odgovor upućen djomli moram se umiješati. Naime ovo što si gore napisao je totalna ludost. Ne znam koji background u programiranju imaš i da li ga uopće imaš ali da te ja sad bacim u npr. ruby on rails framework vjerujem da ti ne bi ništa bilo jasno i da ma koliko god ti čitao taj kod nebi ništa shvaćao, a da prije toga nisi pročitao barem dokumentaciju tog “jezika” ili da te bacim na neki projekt koji koristi asp.net mvc framework.

Prvo se kreće od makro razine, a zatim se zadire u mikro razinu.

Kako će čovjek naučiti nešto iz Codeignitera, a da nema pojma o osnovama OO programiranja, ali ne osnove PHP OO programiranja nego osnove OO programiranja opčenito, kako će znati OO programirati u PHP-u ako nema osnove u PHP-u itd itd.

Da nisi i ti možda jedan od onih WP ili Joomla “gurua”?

Ovo uopće ne treba komentirati. To što je nešto napisano u proceduralnom stilu ne znači i da je čušpajz, taj kod može biti lijepo organiziran i dokumentiran, a za manje stvari i efikasniji od OO pristupa.

Nemam. Profesionalni sam akrobat, žongler i gutač vatre sa doktoratom P.T. Barnum instituta. Ovdje postam čisto iz zajebancije.

[quote=""]
…da te ja sad bacim u npr. ruby on rails framework vjerujem da ti ne bi ništa bilo jasno i da ma koliko god ti čitao taj kod nebi ništa shvaćao, a da prije toga nisi pročitao barem dokumentaciju tog “jezika” ili da te bacim na neki projekt koji koristi asp.net mvc framework.

Prvo se kreće od makro razine, a zatim se zadire u mikro razinu.[/quote]

Početniku ne bi ni arrays bile jasne, a kamoli što drugo. No bolje je da što prije počne raditi u stvarnom svijetu a ne u nekoj “Hello World” fantaziji. Hoće li prvo čega će se uhvatiti biti framework? Neće. Treba li biti odmah od početka svijestan da takve stvari postoje i da stremi k njima? Definitivno.

[quote=""]
Kako će čovjek naučiti nešto iz Codeignitera, a da nema pojma o osnovama OO programiranja, ali ne osnove PHP OO programiranja nego osnove OO programiranja opčenito, kako će znati OO programirati u PHP-u ako nema osnove u PHP-u itd itd.[/quote]

Kako će naučiti kako OO programiranje stvarno izgleda (dakle ne one nebulozne sisavac->pas->terijer primjere) i zašto baš OOP ako ne vidi kako se to koristi i funkcionira u praksi?

Ako razumiješ OOP u PHPu, vrlo je vjerojatno da ćeš ga razumijeti i u ostalim jezicima.

[quote=""]
Ovo uopće ne treba komentirati. To što je nešto napisano u proceduralnom stilu ne znači i da je čušpajz, taj kod može biti lijepo organiziran i dokumentiran, a za manje stvari i efikasniji od OO pristupa.[/quote]

Definicija:

Čovjek je rekao da piše špageti kod, ja sam rekao je to loše. Gdje si ti vidio da ja poistovjećujem špageti kod i proceduralno programiranje?

Zaključak:

On ne zna što je špageti kod. Tebi je to isto što i proceduralno programiranje.

[quote=“voajer”]Cilj imitacije je da se novi programer upozna sa konceptima i shvati što je dobar kod a što ne. U suprotnom se događa da programer radi stvari pogrešno ne zbog ajkavosti već zato što uopće nema pojma da postoji bolji način.

Vidim da imaš nekakvu averziju prema CodeIgniteru. Koji bi ti framework predložio početniku?

Super za tebe. Nadam se da ostavljaš i kontakt podatke u tom kodu kako bi te onaj koji dođe poslije tebe mogao kontaktirati. Radi pojašnjenja koda naravno, ne zato da bi te u gluho doba noći zatukao sjekirom jer si mu ostavio čušpajz koji on onda mora održavati :lula:[/quote]

Jedini nacin na koji ce nauciti OOP nije Codeigniter nije Ruby on Rails NIJE NITI JEDAN FRAMEWORK. Jedini nacin na koji ce nauciti OOP je da procita prvo knjigu neku o OOP pa onda da uzme bilo koji taj framework da gleda svaki source da prati sta se dogadja u kodu da izvuce neke poveznice prema toj knjizi i da pokusa provaliti gdje se koji pattern koristi i u kojem obliku. JEDINO TAKO ce nauciti OOP, koristenjem frameworka je cisto koristenje klasa bez potrebe razmisljanja o patternima o razmisljanju i sl.

Spageti kod kad si vec naveo definiciju sa wikipedie kaze da je to kod koji je nepregledno pisan ima slozenu kompliciranu strukturu OBICU VEZANU ZA PROCEDURALNO pisanje aplikacija, jer se dosta toga ispreplice i tesko je povezati stvari a kamoli nesto kasnije mijenjati.

On treba krenuti od osnova pa tek onda na naprednije stvari, u suprotnom snalazenje u frameworku ce biti pakao (kod kompliciranih stvari).

Sintaksa OOPa nije bauk niti puno kompliciranija od petlji, kontrolnih struktura ili funkcija (osobito ne u PHPu). Nadalje, većina “školskih” primjera OOP-a na koje sam ja naletio nemaju nekakvog smisla niti početniku objašnjavaju koja je svrha OOP i zašto bi ga trebao (ili ne bi trebao) koristiti. Dobar OOP framework to objašnjava, i to na stvarnom primjeru. Po meni je puno važnije (a i teže) razumjeti kako OOP pridonosi krajnjem cilju negoli što je OOP ustvari i njegovu sintaksu.

Gurati odgovor prije problema je glupo jer ne vodi razumijevanju - kakva mu korist ako zna što je OOP ako ne zna kako ga koristiti?

Tu nastupa CodeIgniter. On je dovoljno jednostavan i pristupačan početniku a opet nije neka igračka i sterilizirani primjer koji nema veze sa stvarnošću.

Nadalje, kako će čovjek znati što je dobar kod i kako treba izgledati ako ga nikada ne vidi u praksi? Ili hočeš reći da su primjeri iz knjiga onako kako bi trebao izgledati kvalitetan production kod?

[quote=""]
Spageti kod kad si vec naveo definiciju sa wikipedie kaze da je to kod koji je nepregledno pisan ima slozenu kompliciranu strukturu OBICU VEZANU ZA PROCEDURALNO pisanje aplikacija, jer se dosta toga ispreplice i tesko je povezati stvari a kamoli nesto kasnije mijenjati.
.[/quote]

Kakav je sad ovo prijevod?

Evo definicije sa wikipedije:


Spaghetti code is a pejorative term for source code that has a complex and tangled control structure, especially one using many GOTOs, exceptions, threads, or other “unstructured” branching constructs. It is named such because program flow tends to look like a bowl of spaghetti, i.e. twisted and tangled. Spaghetti code can be caused by several factors, including inexperienced programmers and a complex program which has been continuously modified over a long life cycle. Structured programming greatly decreased the incidence of spaghetti code.

Gdje ti vidiš “procedural”?