31. 08. 2007. | #21 |
član
Certified
Datum učlanjenja: 21.06.2005
Lokacija: Beograd
Poruke: 60
Hvala: 3
4 "Hvala" u 1 poruci
|
Neko je vec preporucio Cake, pa da podrzim.
Cake ima svoj codegenerator, znaci moze on i da scaffolduje, ali ne mora - moze na osnovu tvojih parametara da ti izgenerise view i controller koji posle menjas kako hoces. Dalje framework ima relativno elegantno organizovan MVC, poprilicno jasnu filozofiju, i iako nema prebudzene biblioteke dodataka kao neki drugi, ima sve osnovne stvari koje su neophodne, ukljucujuci tu i razradjen i detalan ACL (access control layer). I sami templejtovi za view-e su cist html + php, izgledaju dosta citljivo, tj nece ti nedostajati smarty mnogo. Plus postoje helperi koji omogucavaju pravljenje formi sa sve validacijom ocas posla. (A sve to naravno moze i da se izgenerishe). Jedina velika mana je sto postoje 2 verzije, "stabilna" 1.1 i alpha 1.2.x, ova prva je pomalo zastarela, a druga je nekompatibilna s prvom, a dok prva ima jadnu dokumentaciju, druga ima jos jadniju. Na sajtu postoji i "bakery", sto je nesto izmedju wikija, code repositorija i zbirke tutoriala, samo je krs organizovan, pa treba dosta zivaca da nadjes to sto ti treba i snadjes se u nakaradnoj filozofiji organizacije takve vrste sajta... PReporucujem da odvojis jedno nedelju dana i natenane se igras sa frameworkom, i isprobavas razne stvari, pitas na irc kanalu ako bas zagusti (ljudi su zaista predusretljivi i kanal je prepun, tako da brzo dobijas odgovor). Dakle, jadna dokumentacija, ali mocan i dosta fleksibilan code generator sa lepom filozofijom. I po defaultu podrzava "lepe" url-ove. Mislim da mu treba dati sansu, samo kao sto rekoh treba se naoruzati strpljenjem i odvojiti neko vreme za ucenje, ne zbog tezine nego zbog dokumentacije. |
31. 08. 2007. | #22 |
profesionalac
Professional
Datum učlanjenja: 11.10.2006
Lokacija: beograd, srbija
Poruke: 271
Hvala: 32
10 "Hvala" u 7 poruka
|
gledam cake, izgleda ok, ali je dokumentacija zaista ocaj :P
cak i na njihovom "wikiju", sada je to valjda za njih "Bakery" -> tamo pise "If you are really desperate you can read this mess, or help us fix it.." tako nesto zasu! anyway -> uspeo sam :P napravio sam svoje 2 klase za pomoc prilikom CRUDa, ali nisam presrecan resenjem, nije me ubrzalo onoliko koliko sam ocekivao. radio sam juce 14h straight. 8h, pa pauza, pa jos 5-6h.. :P oci mi ispadose. ali je uspelo, proradilo je na kraju. kazem - ipak, morao bi to jos da sredim, ali generalno radi. imam 2 klase: Form i Field. bazicno -> napravim novu formu, u njoj drzim niz Field-ova, i onda imam built-in funkcije u klasi Form, tipa "validate()" gde se za svako polje, u zavisnosti od njegovog tipa podatka proverava validnost unosa, ili da li je required ili ne, i naravno imam funkciju tipa "showForm()", koja ce da ispise komplet formu, u tabeli, sa sve pocetkom i krajem forme, kao i dugmadima submit i cancel :P i to radi, kazem, uspelo je, imam i univerzalni "View" cele tabele iz baze, i default akcije, sortiranja, brisanja, stagod - i to je to ali interesantno, NIJE ME TOLIKO UBRZALO? :P moracu ocigledno jos da proradim. eto, cisto sam hteo da vam javim da sam uspeo da napravim nesto svoje (sto je ipak profunkcionisalo), ali da cu takodje da nastavim da se koncentrisem na neki od frejmworka, ako nista drugo - radi ucenja i razmisljanja veliki poz, i hvala svima na pomoci! |
01. 09. 2007. | #23 |
član
Certified
Datum učlanjenja: 21.06.2005
Lokacija: Beograd
Poruke: 60
Hvala: 3
4 "Hvala" u 1 poruci
|
Ako sam ukapirao, ti si uradio code generator? Ili je u pitanju neka virtualizacija podataka, tj pravis neki meta-kod koji bi ti olaksao rad?
Iako meta-kod zvuci jako elegantno, licno sam za dobro napravljen generator "pesackog" koda. Naravno "pesackom" kodu nista ne smeta da bude OO i prijatan za oko i upotrebu. Ponekad je keep-it-simple-and-stupid najbrzi nacin da se posao zavrsi - a kao sto rekoh to sto je simple i stupid ne mora da znaci da je brljotina A sto se vremena tice - ne znam da li pricas o tome da si potrosio gomilu vremena da napravis tvoje CRUD-klase ili mislis da sama usteda prilikom koriscenja istih nije neka? |
01. 09. 2007. | #24 |
profesionalac
Professional
Datum učlanjenja: 11.10.2006
Lokacija: beograd, srbija
Poruke: 271
Hvala: 32
10 "Hvala" u 7 poruka
|
yo covek!
pa pazi - napravio sam ... code generator. da. klasu koja ce da generise formu, elemente forme i ostalo, dakle pripremi mi kompletan HTML kod i logiku rada, sa sve new/edit/delete opcijama i pregledom tabele i sl. i slazem se sa tobom, u pravu si kada kazes da je nekada peske nesto i brze/lakse/bolje/pouzdanije uraditi. prosto - zapleo sam se malo precenio sam se, ali sam ipak uspeo u onome sto sam hteo. jedina mana projekta je bila sto nisam mogao da isplaniram upotrebu klase, pre nego sto je napravim, ali sada i to radi, i sve je ok. a ono sto ti kazes - za vreme - - potrosio sam 4 dana da napravim CRUD generator, ali isto tako ne vidim veliku razliku u "brzini kodiranja" sa tim klasama, i peske. mislim - ok - postoji razlika, svakako, ali to vreme koje ustedis da pises rucno svaki element forme i sl - izgubis kasnije jako lako kada se zakomplikuje stvar sa nekoliko FKova ili slicnih specificnih combo/checkbox opcija, koje moras rucno da popunjavas i da budzis klasu :P sve u svemu - mozda je peske brze, ali gledam da se automatizujem. citam i radim i ucim svakako CI + Rapyd, cisto da bi video njihov pristup, pa cemo videti sta ce biti |
02. 09. 2007. | #25 |
član
Certified
Datum učlanjenja: 21.06.2005
Lokacija: Beograd
Poruke: 60
Hvala: 3
4 "Hvala" u 1 poruci
|
E pa to. I ja sam bas nedavno pisao neki svoj code generator, jer sam shvatio da mi za cake treba vremena, kojeg nisam imao... Pa shvatih da cu brze napisati code generator nego da sve radim peshaka ili da se mucim sa, jeli, frameworkom kojeg ne znam.
Verovatno svaki normalan php developer ima svoj (pseudo)framework ili bar prirucni generator koda, samo sam ja malo bio van php-sveta pa sam zardjao (zato sad ne mogu ocima da vidim onaj moj stari ne-objektni kod, pa smatram da je to bila prednost ) |
02. 09. 2007. | #26 |
novi član
Datum učlanjenja: 17.09.2006
Poruke: 5
Hvala: 0
0 "Hvala" u 0 poruka
|
frameworks
Evo da prilozim i ja svojih par centi.
U globalu frameworke mozes da podelis po stepenu automatizacije koju ti pruzaju i, takodje u globalu, je taj stepen automatizacije povezan sa nivoom slobode koju ti omogucavaju u smislu organizaovanja samih elemenata od kojih pravis svoju aplikaciju. Takodje razlikuju se znacajno i po kvalitetu implementacije, dokumentacije, organizacije ... Po automatizmu Cake prednjaci, iza njega je CI a posle toga na zacelju nepravedno zapostavljeni Zend Ja poslednjih nekoliko meseci radim u Cake frameworku i mogu da podelim detaljnije iskustva o njemu, CI sam video ali nisam detaljnije ulazio u problematiku a za Zend se sve vise interesujem. Cake je port Railsa na PHP i samim tim tezi funkcionalnostima koji trenutno ima Rails, sam potencijal PHP-a je drasticno manji od Ruby-ja pa mi se cini da su nacin na koji se implementiraju resenja u Cake-u jako konfuzni i nepregledni. Ovo je veoma vazno jer zbog nedostatka dokumentacije i potrebe da se stalno ulazi u kod da bi se videlo kako odredjeni metodi u stvari funkcionisu. Za svakog neiskusnog programera u PHP-u ovo je prosto nemoguca misija. Druga stvar koja kod Cake ne valja je to sto verzija 1.2.x.x obecava puno funkcionalnosti ali za sada je kvalitetno implementiran jako mali broj njih, u sustini ovo nije ni cudo jer je jos uvek u alpha verziji ali ipak za nekog ko zeli da koristi iste funkcionalnosti treba naglasiti da one uglavnom rade ali znaju nekada da debelo namuche. Ono sto ipak izdvaja Cake kao framework jeste implementiran ActiveRecord koji omogucava da se na jednostavan nacin prave relacije izmedju tabela i automatski izvlace podaci iz zavisnih tabela. Poslednjih par nedelja sam radio na nekim behaviorima za Cake kako bi na efikasan nacin implementirao multijezicnost i uvideo da je sama implementacija sloja ka bazi jos uvek nedovrsena i malo zbunjujuca za nadogradjivanje jer mi se cini da ne postoji sistematicnost u implementaciji pa se u pojedinim kontekstima kod ponasa potpuno drugacije od onoga sto ja od njega ocekujem. Sto se generisanja sadrzaja tice u poslednjih par commita je dodata mogucnost da se kreiraju templejti za CRUD viewe tako da se to sada moze prilagoditi dizajnu pogotovo za admin deo gde se dizajn prakticno prenosi sa projekta na projekat. U globalu Cake jako moze da podigne produktivnost za programere ili timove koji se baziraju na implementaciji sajtova jer se dosta koda koji se kreira na projektima moze da ponovo koristi, komponente, helperi, view-i, takodje postoji i dosta kod koji moze da se nadje po internetu, mada iskreno mislim da je uglavnom jako loseg kvaliteta i ja sam najcesce video ideju i napisao svoj kod umesto da uzimam tudje komponente, behaviore ... Sto se tice razvoja neke globalne logike aplikacije izvan MVC frameworka Cake mi deluje veoma skuceno, primer je recimo implementacija CMS-a u kome bi MVC deo bio samo element za izvrsenje akcija a logika aplikacija stajala iznad toga, u Cake mislim da je to jako tesko izvesti zbog doslovnog pracenja principa "Convention over Configuration" koji prakticno namece neke principe po kojima moras da se ponasas ako zelis da stvari rade. Mozda ja jos uvek nisam shvatio nacin na koji mogu ovo da uradim bezbolno. U poslednje vreme se sve vise interesujem za Zend framework koji je nesto za sta predvidjaju da ce da ostavi PHP u zivotu . Uglavnom su PHP programeri jako malo koristili OO model koji je dosao sa PHP5, inace sam PHP5 nije nesto preterano uspeo da preuzme dominaciju od PHP4 ali to je neka druga prica. Zend Framework koristi sve potencijala OO modela i sam po sebi zahteva 5.1.4 ili cak 5.2 pa navise da bi radio jer koristi PDO drajvere i ostale PHP novotarije Ono sto sam o Zendu uspeo da zakljucim je da pruza veliku slobodu za projektovanje logike na visem nivou iznad MVC koncepta jer praktivno tera korisnika da koristi MVC kao element svoje aplikacije a ne da mu aplikacija bude u MVC konceptu. Kod je jako kvalitetan, baza profesionalnih developera koji ucestvuju u razvoju je siroka i ozbiljna a i zajednica mi se cini sve veca. Zend za sada nema implementiran ActiveRecord (bar kako sam ja shvatio) ali mislim da postoje neke nezavisne implementacije. Ono sto je vidljivo kao sloj ka bazi koji bi se koristio u kombinaciji sa ZF je Doctrine ORM PHP sloj http://www.phpdoctrine.org/ koji je trenutno u 1.0RC1 verziji. CI nisam probao ali mislim da je on negde izmedju Cake i ZF po automatizaciji, cini mi se da je dosta kvalitetniji kod od Cake-a i da ima dosta bolju dokumentaciju ali ne tako veliku bazu korisnika. Krajnji zakljucak: za brzu implementaciju jednostavnih sajtova sa osnovnim funkcionalnostima treba koristiti Cake jer znacajno podize produktivnost i ponovno koriscenje koda. Za nesto ozbiljnije kao sto je recimo izrada proizvoda na kojem bi se zasnivao razvoj firme ipak mislim da za sada treba pribeci nekom drugom resenju. Mozda se sa vremenom Cake dovoljno razvije ali mislim da ce Zend da ga pregazi na polju ozbiljnih PHP aplikacija veoma brzo. Koliko teksta a slika nigde |
25. 09. 2007. | #27 |
profesionalac
Qualified
Datum učlanjenja: 20.06.2007
Lokacija: Beograd
Poruke: 189
Hvala: 17
14 "Hvala" u 11 poruka
|
Meni CakePHP deluje kao mrtav projekat!!!
CakePHP je mozda najbolja kopija Ruby on Rails-a u PHP svetu. Dok Zend Framework ide nekom svojom putanjom, koja cini mi se vise odgovara "jeziku" kakav je PHP. Pocetkom ove godine sam krenuo da ucim Cake za neki projekat ali odustao kad sam shvatio da tada nisu bile zavrsene jos neke bitne stvari, a i da je poprilicno bugovit kad nesto zaista krenes da pises u njemu. S druge strane njegova implementacija ActiveRecord patterna se ispostavila kao poprilicno impresivna. Samo zbog toga, sam lepo uzeo i napisao jednu PHP skripticu, koja spideruje stranu na CakePHP siteu gde moze da se vidi koliko je jos ticketa ostalo do sledece verzije CakePHP-a ... stavio skriptu da se pokrece CRON-om na moj site i da mi salje emailom broj tiketa dvaput mesecno ... pa reko kad to malo odraste da mu se ponovo posvetim ... Zakljucak nije bas happy za Cake ... U proteklih devet meseci broj tiketa konstantno oscilira oko 250!!! Tekuca verzija je ista kao i pre 9 meseci ... razlika je u trecem broju verzije ... i tako ... Inace ja sam do pre godinu dana koristio CodeCharge za pisanje web aplikacija (custom CRUD-oliki code) a vec godinu dana koristim Drupal za sve ... Em je strava kao CMS em je vremenom postao zavidan framework. Trenutno u njemu pisem totalnu custom web aplikaciju za "All American Football League" site, za menagerovanje prijava igraca, nimalo jednostavna zvercica. Vec je napisano brdo strana sa totalno custom logikom, koristim Drupal iskljucivo na nivou framework-a ... i vrlo sam zadovoljan ... ako nekog zanima mogu da podelim iskustva i detalje o tome ... Cheers ljudi! Misha |
26. 09. 2007. | #28 |
expert
Grand Master
|
imam prijatelje koji bi da sami prckaju svoje sajtove, zbog toga sam ga pre nekog vremena i razgledavao
nije li to gotov cms (all-in-one), a ne framework? naravno ukoliko je napisan dobro, ti bi mogao da ga koristis kao framework kazi neka iskustva, a pitanja ce sama doci |
26. 09. 2007. | #29 |
profesionalac
Professional
Datum učlanjenja: 11.10.2006
Lokacija: beograd, srbija
Poruke: 271
Hvala: 32
10 "Hvala" u 7 poruka
|
pa, vidis, i ja sam stekao isti utisak, tj. da je Drupal gotovo resenje, kao ... phpNuke, Joomla, i slicna poznata imena.
drupal NIJE framework, quote sa sajta: "Drupal.org is the official website of Drupal, an open source content management platform." dakle, drupal je dobar, ali to je 'samo' jos jedan CMS. a framework je nesto sasvim drugo, zar ne? |
26. 09. 2007. | #30 |
član
Certified
Datum učlanjenja: 21.06.2005
Lokacija: Beograd
Poruke: 60
Hvala: 3
4 "Hvala" u 1 poruci
|
Mislim da je covek mislio na framework oko kog je CMS slozen. Nisam gledao Drupal, tako da necu da lupam.
Inace, ovo sto Misha kaze za Cake nije daleko od istine - projekat se vec neko duze vreme, na zalost, ne pomera s mrtve tacke... Ne bih da ponavljam koliko me nervira sve ostalo oko Cake-a, tako da sam definitivno odlucio - radim svoj framework, pa makar bio i bangav. Vec sam napravio neki codegenerator za activerecord, koji ce naravno biti zesce doradjen jer imam nekih cool ideja, a takodje sam osmislio i strukturu i kako ce to da funkcionishe... Prvom prilikom ga radim, samo da u'vatim vremena. |
|
|
Slične teme | ||||
Tema | Početna poruka teme | Forum | Odgovori | Poslednja poruka |
Izbor mobilnog operatera? | 3banchi | Komunikacije | 36 | 21. 10. 2010. 10:39 |
Izbor tehnologije za velike Web aplikacije | toxonics | Programiranje | 75 | 16. 01. 2006. 16:34 |
Izbor internet provajdera je bitan :) | BluesRocker | Opušteno | 2 | 19. 09. 2005. 14:48 |