Malo o php frameworkovima, koji odabrati (CodeIgniter vs Zend)

Vjerujem da je ta tema bila malo sam pretražio nisam vidio na prvoj strani rezultata što znači da više nije aktualna :slight_smile:

Iako većinu posla radim u ASP.NET-u imam dosta toga za raditi i u php-u, do sad sam radio sa nekim svojim klasama, ali sad ipak smatram da je vrijeme da počnem koristiti framework… naravno pitanje je koji, pročitao sam mnoge diskusije vidio mnoge usporedbe, ali jednostavno se teško odučiti :slight_smile:

Vidim da se Codeigniter dosta hvali, meni se sviđa brz je, nema nekih problema i sad sam između njega i Zenda dosta rastrgnut,
Jedini razlog što ne želim koristiti Zend je jer mi se čini glomazan, i sporiji, ali opet s druge strane Zend stoji iza njega, čini se da ima najveću budučnost, a ono glavno zbog čega ne mislim koristiti zend je koliko ima smisla koristiti Zend na nekim manjim stranicama? nije li to žešći overkill, radi ovog mi u prednost dolazi codeigniter…

Ja ne mislim raditi jednu stranicu u frameworku pa učit drugi, a ne da mi se ni smarat i učiti oba frameworka, ionako imam već previše toga u glavi i bojim se da bi mi to samo pogoršalo stvari…
znači tražim framework koji ću koristitim u svim projektima, bilo da je mali ili veliki…
Glavne stvari koje me zanimaju su:

  1. Budučnost frameworka
    ->iza Zend frameworka ipak stoji zend pa mislim da ima svjetliju budučnost
  2. Raspon projektima (koliko je dobro koristiti za velike i male projekte)
    -> čini mi se da je codeigniter bolji za manje, a zend za veće projekte, al mene zanimaju i veliki i mali projekti
    3.Brzina
    -> vidim da je zend dosta spor, ali ima li se uopće smisla zamarat time?
  3. Podržanost od editora
    -> autocomplete ili JOŠ BOLJE intellinsense su zakon stvari, za zend znam da ga podržava zend studio, a za codeigniter nemam pojma, makar mi se niti Zend studio previše ne sviđa, ovo bi isto moglo donijet prevagu…

inače ima li negdje podatak o market share-u php frameworka? ovaj podatak bi mi puno značio…
ako neko želi predložiti još neki framework slobodno, vidim da se i symphony dosta hvali…

Prvo sta se tice brzine PHP frameworka:

http://blog.astrumfutura.com/archives/421-PHP-Framework-Benchmarks-Entertaining-But-Ultimately-Useless.html

Nisam radio u CI, ali jesam u ZF. Jako je mocan i jako je glomazan. Ima sporu krivulju ucenja, komponente su mu neovisne i treba dosta vremena dok se nauci i dok se sve ne poslozi. Za manje projekte nije bas nesto (zbog gore navedenih razloga), ali za vece mislim da rastura. CI bi ti mozda vise odgovarao, posto je manji …

Iako, misljenja sam da je vlastiti framework za manje projekte najbolje rjesenje.

http://www.phpframeworks.com/top-10-php-frameworks/

eZ je isto dosta mocan, koliko sam imao prilike cuti.

Ali, ne mogu previse usporedjivati frameworke posto sam samo u Zend-ovom radio …

vidio sam ja te linkove već i prije, dosta toga sam pročitao, odlučio sam se za codeigniter već prije bio i radio sam u njemu nešto, a za zend me najviše navlači činjenica da je to zendov projekt, inače mislim da bi i sa codeigniterom mogao uraditi velike projekte bez problema :slight_smile: , a vidio sam negdje i da se klase iz zenda mogu lako dodati u codeigniter, makar nisam nešto previše obračao pažnju. Čini mi se da sam ja već odavno odlučio za codeigniter, samo želim čuti neki pravi argument, da me netko odgovori od toga :smiley: , sumnjam da će toga biti pa ću vjerojatno malo jače ući u codeigniter, a opet linija učenja frameworka općenito ne može biti nešto preduga, tako da kasnije i ako zend stvarno prođe codeigniter (govorim u svoje ime, u mojoj glavi ak ga prođe :smiley: ) neće biti problem odvojiti par dana na učenje zenda…

inače ako će netko čitati ovaj thread, smatram ovaj članak izuzetno kvalitetnim :slight_smile:

Samo ukratko, na iPhoneu sam pa mi se neda previse tipkat, ja koristim CI i meni je odlican, brzo se uci, nije glomazan i lako se prilagodi. Isto sam mislio ZF uciti, ali mi je takoder djelovao ogromno i dosta bi mi vremena oduzelo. Ukratko, moj glas ide za CI.

Jel to znači “I’m back” ? 8)

Ako već moraš odabrati, odaberi CI. Lakši je, više litereture i sl. Poslije se prebaciš na Kohanu, onda napraviš svoj framework i tako to ide. :smiley:

I onda se opet vratiš na CI jer ti vlastiti djeluje kao šlampavo izveden :slight_smile:

Offtopic:

Tak tak, kuham nekaj budeš vidio kasnije :wink:

[quote=“nitko”]I onda se opet vratiš na CI jer ti vlastiti djeluje kao šlampavo izveden :slight_smile:

Offtopic:

Tak tak, kuham nekaj budeš vidio kasnije ;)[/quote]

pa napravio sam ja svoj vlastiti framework odavna, ali nema se vremena ni volje ga održavat, zastario pomalo, php 4, a i ne kužim čemu izmišljat toplu vodu? nemogu ja to tak održavati uz svoje projekte, još pogotovo kad mi je php tek #2 web jezik, a programiram i više tek servere i form aplikacije, tak da fakat nema smisla održavat svoj framework, a ionak nikad neće biti na nivou kao codeigniter ili zend ili symphoni, cake il bilo koji od poznatih…

kohana je sličan ci, samo što je ovaj prvi pisan samo za php5 (ovisi što ti bolje paše). Moj glas ide za kohanu jer postoji nekoliko odličnih modula za nju. Ali ni sa CI ne možeš pogriješiti. Za kohanu je potrebno mrvicu više vremena za naučit… po brzini su tu negdje

Zend Framework nisam previše koristio, te mi se čini nekako težak i zakompliciran iako vjerujem da je kvalitetan.

Od ostalih frameworka probao sam Codeigniter, CakePHP, Kohanu (koja je zapravo fork Codeignitera) i još poneke sitne…

Najviše me oduševio Codeigniter… Jednostavan, lako je ovladati njime, ima genijalan User Guide, hrpu biblioteka i helpera… U svakom slučaju po meni ima malu prednost nad CakePHP-om.

Što se tiče izrade vlastitog frameworka, krenuo sam bio i u to, sa željom da naučim više o načinu na koji funkcionira jedan web framework. Ubrzo sam shvatio da je to uzaludno, jer sve što sam napravio i pokušavao napraviti već je postojalo u drugim frameworkovima, a i naravno, CI je imao utjecaj na mene, pa sam shvatio da zapravo rekreiram CI :slight_smile:

Naravno, može se pokušati napraviti svoj FW ukoliko imate viška slobodnog vremena, neće škoditi, samo će pomoći u shvaćanju onoga što zapravo koristite :slight_smile:

Zend je vrlo kvalitetno napisan. Nebih ga nazvao teškim jer netko sa kvalitetnim znanjem OOP nebi trebao imati nikakvih problema. Dokumentacija je odlična.
Iako je community velik da bi nešto došlo u Zend framework to mora proći put kroz pakao. Dok drugi frameworci su otvoreniji za nadogradnju.

Jedan autor u osvrtu frameworka je napisao da Zend u biti nije ni pravi framework već skup klasa. Tako imam i ja neki dojam o njemu jer osim forsiranja MVC i folder strukture ruke su developeru otvorene da radi šta hoće. Dok neki drugi frameworci u kojima sam radio (PRADO) nameću svoj pristup razvijanju PHP aplikacija.

Kod Zenda bi izdvojio klase za spajanje na bazu, klase za izradu forme te sustav autorizacije.

Ono što me smeta kod Zenda osim njegove zatvorenosti to što je Zend “katica za sve”.
Neznam kako stoje sa AJAX, imaju sad integriran Dojo i JQuery kao vanjski library ali do sad nisam primjetio da je to rješeno kvalitetno kao kod nekih drugih frameworka.
Uglavnom sa Zendom se ne može pogriješiti ali njegova širina ga ne čini “best tool for the job” već alatom kojim se posao može izvesti.

E da sad sam se sjetio trebao sam preuzumiti neki SOAP service i saznao da php nema to najbolje rješeno dok Zend ima Zend SOAP klijenta i s njime to radi bez problema.
Ono što je još bolje što je Ivan naveo jest da su klase neovisne i mogu se “izvaditi” iz frameworka i raditi s njima.

A treba napomenuti da su Magento i Open X napravljeni u Zendu i koriste samo ono što im treba. A to su mislim ne samo jedne od najboljih open source aplikacija već i jedne od najboljih aplikacija u svojem području.

Da, super je napravljen Zendov framework (jako kvalitetno, iako mi neke komponente nisu po gustu). Neovisnost njegovih kompomenti je u jednu ruku super jer se moze koristiti jedna neovisno o ostalima (SOAP npr., a i ostale), al u drugu ruku je lose jer se za dosta projekata koristi odredjen set istih komponenti, a sve te komponente je potrebno posloziti. Iako, framework se moze prositi bas takvom funkcionalnosti.

Vec se lagano radi na verziji 2.0, koja ce imati minimum PHP 5.3. Koliko sam imao prilike citati, zvuci obecavajuce. Jos da malo Studio poboljsaju …

Znam za kohanu, ali koliko sam skužio kohana je ustvari codeigniter rewritean za php5.
Ne bi bilo loše koristiti codeigniter i jednostavno izvaditi iz zenda klase koje mi više pašu i puknut u codeigniter, to mi se sad čini možda ko i najbolje riješenje. Mislim da ću ipak zasad samo sa codeigniterom ići…
Ali ubija to što nema kvalitetnog PHP IDE-a, nijedan ne podržava full intellinsense ala Visual studio :D, mislim i ako radiš sa nekim frameworkom nećeš imati autocomplete za njega…

Koristim Zend i stvarno sve najbolje o njemu. Vrti se i ne posustaje. Jos kad ga se upari s Zend Serverom, stvari ne mogu biti bolje :slight_smile:

Svi oni su zasnovani na MVC, testirao sam skoro sve FW ako mislite da krenete sa bilo kojim od ovih odlucite se za ZEND ipak iza zenda stoje momci koji su razvili PHP, ne samo da je dobar po pitanju sigurnosti nego je sigurno i najjaci FW, moduli koji dolaze sa zendom apsolutno su prilagodjeni, sve sto treba za zend je dobra volja i zagrijat stolicu :slight_smile:

Mislim da Zend framework ima full time 5 ljudi za razvoj frameworka.
Što je dobro ali i nije. :slight_smile: Ponekad je bolje da ljudi koji razvijaju framework s njime i konkretno rade. No taj propust zajednica nadoknađuje.

Što se tiče sigurnosti barem s klijent strane Zend u usporedbi s PRADO je dosta slabiji. CSRF zaštita u Zendu ako se primjenjuje na preporučeni način onemogučava multitasking.

PRADO s klijent strane pruža zaštitu i od ubacivanja Javascripta (XSS) te mjenjanja forme.
Recimo ukoliko imate combo box i igrate se sa vrijednostima u formi (temper data) framework neće prihvatiti vaš unos.

Sad kak’ ste svi tu počeli Zend hvaliti, moram i ja pokušati s njim napraviti neki mini testni projektić. :))

pokušao sam jednom prije, ali tada sam imao i manje znanja pa mi je to bilo nekako prekomplicirano, valjda ću sad pohvatati nešto od Zenda :stuck_out_tongue: