DevProTalk

DevProTalk (http://www.devprotalk.com/index.php)
-   PHP (http://www.devprotalk.com/forumdisplay.php?f=9)
-   -   PHP frameworks, again (http://www.devprotalk.com/showthread.php?t=7873)

bluesman 24. 10. 2009. 21:40

@holodoc: Smarty se nije menjao godinama, ako kažeš da nisi odavno probao to znači da nisi probao od početka jer se oduvek template "kompajlira" u čist PHP :) Sada se sprema smarty 3, koji je napisan za PHP5 i daje još bolje rezultate za izvršenje scripta (testirao sam).

Nisam znao da se to zove "čista alternativna PHP sintaksa", ali umesto da cepidlačim samo da samo hteo da ti kažem da Smarty baš tako "kompajlira" .tpl u PHP. Takođe u Smarty 3 imaš i novi builtin resource "php", pa možeš da koristiš čist PHP kao template, na primer ovako:

PHP kôd:

$smarty->display ("php:pure_php_template.php"); 

Ako to koristiš, onda se taj PHP ne kompajlira već direktno include-uje, što i jeste jedino razumno rešenje u ovom slučaju. Samim tim izbacuju se avi argumenti protiv Smarty sintakse jer sada ko želi može da koristi čist php kao template.

Znači, ja nisam protiv FW, i ja koristim (svoj) FW, ali sam protiv tih "all-purpose" stvari koje su otišle preširoko. Više mi se sviđa Wordpress kao framework jer je specijalizovan za jednu stvar (+- par stvari koje zavise od znanja i veštine developera) nego ti super-wide koji će sve da urade umesto tebe.

Blood 24. 10. 2009. 23:18

Citat:

Originalno napisao Aleksandar.Ilic (Napišite 74833)
Jednostavno mi je cake odvratan na primer.

Možeš li da obrazložiš u par rečenica zašto? (Samo me interesuje šta ti se konkretno kod njega nije svidelo)

Ja sam počeo da ga koristim nedavno i mogu reći da sam prezadovoljan njime. Logika koju koriste je dosta slična mojoj i prilično mi "leži", ima svoj "bakery" koji je prilično moćna stvar. Pored generisanja modela, kontrolera i view-ova, ima par još jako dobrih stvari. Kod koji se izgeneriše se može jako lako promeniti, sam framework je pisan da završava neke stvari, a ne kao ZF koji je po meni pisan da bi se mogao proširiti pa tek onda završiti neke stvari, cake isto tako ima veliki comunity i mnoštvo već gotovih komponenti, a pored toga ima i svoje komponente koje prilično ubrzavaju stvari. Auth komponenta recimo sa 3 linije koda završava bazičnu autorizaciju korisnika (ovo je samo jedan od primera, kojih ima mnoštvo). Ima ugrađenu lokalizaciju koja radi odlično. Sve u svemu klasičan CMS od "nule" se može napraviti za jedan radni dan, a to je ono što je meni bitno.

PS. video sam negde i komponente koje povezuju Smarty, tako da se i Smarty može koristiti.


Pozdrav.

holodoc 24. 10. 2009. 23:37

@bluesman
Hvala na iscrpnim informacijama ali ja nisam nigde ni sporio da se Smarty template fajlovi "kompajliraju" ;)

pkrstic 25. 10. 2009. 04:04

Ne volim sto se ovde ljudi olako etiketiraju kao neiskusni i obicni smrtnici. Nije prvi put. Skoro da mi je cast da pricam sa nekim neobicnim ;) Takodje mi smeta sto je tema otisla u Smarty je dobar / nije dobar. Bilo toliko puta pricano u raznim temama koje veze nisu imale sa istim na pocetku.

Dizajneri o kojima sam pricao su pravi dizajneri, ne ovi koji znaju da kodiraju i poznaju fotosop i kradu tudje tempalte i menjaju im boje i slike, pa sebe nazivaju dizajnerima. To sto sam rekao da neshvataju kako funkcionise odnosilo se na to da ljudi kad pocnu da rade sa smartijem obicno traze nacin kako da ubace malo php koda u smarty template, umesto da sve to pripreme pre samog ucitavanja templatea.

To sto neko kaze da je neki fw velik, a da ako radis sam sa svojim fw + smarty + gomila skripti za svasta nesto, neka ponovo razmisli sta je vece, i koliko je to nezavisno od promene koda prilikom updatea. Da li je lakse ispratiti jedan update za ceo fw ili za x skripti koje su inkludovane.

inace iza mene stoji oko 35+ freelance projekata, nekom mom cmsu i sve to pod smartijem. Teskom mukom sam odlucio da sve to napustim i probam neki fw, i onda skontao da je CI vrlo slican onome sto sam radio samo mnogo urdnije napisano.

bluesman 25. 10. 2009. 12:57

Ako me sećanje ne vara upravo si ti okrenuo temu u smeru smarty je dobar / loš izjavom "Takodje smatram da je Smarty gubljenje vremena", drugi su samo spomenuli da je i Smarty u stvari FW.

Ako si odlučio da napustiš "neki tvoj cms i sve to pod smartijem" u korist nečega u čemu se osećaš bolje, onda je to super stvar, ali ne bih rekao da je Smarty kriv za to što si odlučio da sve to napustiš. Ostatak nisam baš razumeo šta želiš da kažeš, naročito drugi paragraf, samo bih prokomentarisao ovo:

Citat:

Da li je lakse ispratiti jedan update za ceo fw ili za x skripti koje su inkludovane.
Da, naravno da je "lakše ispratiti jedan update za ceo fw" kada ti očekuješ od drugih da to rade. Nadam se da nećeš pogrešno razumeti ovo jer ne mislim na tebe lično, ali po meni je tu razlika između "php programera" i "php korisnika". Ovi drugi liče na dizajnere koji koriste Photoshop i imaju instaliranu gomilu pluginova, glavna prednost im je što znaju sve filtere, uglavnom rade sa stock photos i clipart-ima ali imaju poteškoća kada treba da krenu od praznog canvas-a. Tako i "PHP korisnici" izaberu neki FW, nauče da ga koriste, submituju bug-ove, čekaju fix-ove, redovno rade update FW, kada im zatreba čak i neka sitnica -prvo će da potraže da li ima već nešto gotovo, neki plugin ili nešto slično, pa tek ako ne mogu da nađu ili im ne odgovara, razmišljaju o tome da pišu sami, a onda se i razni forumi pune temama "imam problem da ...". Kada nastane problem sa FW (neki exploit ili nešto) automatski su svi ranjivi, i što je poznatiji FW to je veća mogućnost da će neki da "iščačka" nešto.

Naglašavam da je i jedno i drugo legitimno i ja nemam nikakav problem sa tim, niti želim da kažem da je jedno dobro a drugo loše, samo volim da istaknem razliku. Ima ljudi koji prave čuda u wordpress-u i imaju jako dobre sajtove, a u PHP znaju da napišu tek one osnovne stvari. I to je super, ali da li onda pričamo o "programerima" ili "userima"? Ja mislim da i oni sami za sebe ne govore da su programeri. Oni su jako dobri "korisnici" jako dobrog FW, pa čak i ako "programeri" progunđaju kako je WP ovo-ono, svi ti kontra-argumenti padaju u vodu kada vidiš koliko su ljudi srećni sa WP.

Iz svega ovoga sledi zaključak, ako nekome (nekim čudom :) ) još uvek nije jasno šta ja mislim o ovome: Frameworks su super stvar, ali preferiram specijalizovane FW pre nego "all in one" rešenja koji će da rade sve umesto tebe. To naročito važi za velike projekte.

Marko Medojevic 27. 02. 2010. 15:45

Što se tiče same teme vidim da većina ovde koristi CI.
Kako se snalazite za autentifikaciju/autorizaciju, layout, parcijalno keširanje view-a? Da li koristite eksterna rešenja za to?
Vidim da Zend ima sve tri nabrojane funkcionalnosti i još gomilu korisnih svtvari, ali ga u ovoj temi gotovo niko i ne pominje. Nailazio sam na primedme da je spor za high-load sajtove, međutim kako sam u zadnje vreme radio par srednjih(15-20.000 pageloada dnevno) nisam primetio nikakve probleme u performansama. Da li je neko od vas imao probleme sa performansama Zenda?

Kompletno mi deluje i Yiiframework, bar nakon proučavanja dokumentacije, mada mu je zajednica znatno manja nego kod CI i ZF. Nisam još stigao da ga isporbam.

ivanhoe 27. 02. 2010. 16:10

vecinu zend fora mozes da koristis i bez zend FW, tako da ne postoji neki problem da na primer u Kohanu ukljucis nesto od zend modula

Djuki 27. 02. 2010. 22:09

Super što si spomenio Kohanu. Ako većina ovde koristi CI, onda želim da ukažem na neke nedostatke CI fw.

Ci je "zakucan" za PHP4, i ne koristi brojne prednosti koje nudi PHP5 kao

- autoload klasa
- abstraktne klase (CI Stalno kreira objekte pro podizanju, da se srediti ali nije ovo jedini nedostatak)
- interfejsi
- CI ne koristi izuzetke, naravno vi možete da ih primenjujete niko ne brani, ali jednostavno nisu integrisani u sam fw.


Zato i želim da ukažen na Kohanu verzija 2 koja ima dosta sličnosti sa CI-jem,
i verzija 3 koja je praktično razvijena "od nule".

Umesto konstantnog prenošenja CI objekta koji je dostupan u svakom objektu, doduše preko refernce, u PHP-u 5 bi pandam tome bili singlton objekti.

Problem sa CI jem je i ako se javi potreba čuvanja ili serijalitacije objekata, koji za sobom "vuku" gomilu podtata vezanih za CI objekat a da oni zapravo nemaju nikakvu vezu sa tim objektom.

Počeo sam da radim sa Kohanom posle Ci-ja, i ima ove prednosti koje sam spomenuo. Voleo bih da čujem nekoga ko ima iskustva sa oba fw, njegovo mišljenje.

Opet malo sam bacio oko i na symphony a zbog admin generatora, ta ideja sa auto generatora si me dopada i malo sam se igrao sa nekima koji koriste yml fajlove za to, pa i o ovom asprektu u fw bi voleo da prodiskutujemo.

ivanhoe 27. 02. 2010. 23:08

ja od decembra radim intezivno na odrzavanju jednog velikog sajta pisanog u kohani, i nemam neke velike zamerke, osim sto mislim da je pola fora i helpera nepotrebno.. ali anravno niko te ne tera da to koristis..

a inace postoji isti problem koji spominjes i u Kohani, uradis print_r() rezultata nekog DB upita i dobijes izlistan i kilometarski Database objekat, jer se cuva referenca.

Djuki 28. 02. 2010. 00:15

Nisam znao da resultu čuvaju DB objekat, očekivao bih da sve ide preko instance metode. Mislim da bi to bilo ispravnije, ali da ne idemo suviše u detalje da ne odemo offtopic.

Višak helpera pa dobro to nije problem, glava ne boli.

Sada sam se setio da ima nešto što mi se i ne dopada previše kod kohana 3 verzije a to je sledeće.

Ako klasu smestmo u classes/dir1/dir2/drivers/klasa.php

moramo je imenovati ovako Dir1_Dir2_Driver_Klasa

sada da ne bismo koristili klase sa ovako glomaznim imenima, možemo da uradimo sledeće, napravim u classes folderu klasu Klasa
Kôd:

Klasa extends Dir1_Dir2_Driver_Klasa {}
Klasa sa praznim telom je tu samo da skrati naziv. Jasno je da je ovo urađeno zbog auto loada, ali ovaj deo me nije oduševio.


Vreme je GMT +2. Trenutno vreme je 04:16.

Powered by vBulletin® Verzija 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Copyright © DevProTalk. All Rights Reserved.

Mišljenja, saveti, izjave, ponude ili druge informacije ili sadržaji nastali na Sajtu su vlasništvo onoga ko ih je kreirao, a ne DevProTalk.com, tako da ne morate da se oslanjate na njih.
Autori poruka su jedini odgovorni za ovakve sadržaje. DevProTalk.com ne garantuje tačnost, kompletnost ili upotrebnu vrednost informacija, stavova, saveta ili datih izjava. Ne postoje uslovi pod kojima bi mi bili odgovorni za štetu ili gubitak koji je posledica bilo čijeg oslanjanja na nepouzdane informacije, ili bilo kakve informacije nastale kroz komunikaciju između registrovanih članova.
Web sajt može sadržavati linkove na druge web sajtove na Internetu ili neke druge sadržaje. Ne kontrolišemo niti podržavamo te druge web sajtove, niti smo pregledali bilo kakve sadržaje na takvim sajtovima. Mi nećemo biti odgovorni za legalnost, tačnost ili prikladnost bilo kog sadržaja, oglasa, proizvoda, usluga ili informacije lociranim na ili distribuiranih kroz druge web sajtove, niti za bilo kakvu štetu nastalu kao posledica takvih informacija. DevProTalk.com drži i čuva druga prava vlasništva na web sajtu. Web sajt sadrže materijale zaštićene copyright-om, zaštitne znakove i druge informacije o pravu vlasništva ili softver. Članovi mogu poslatu informacije zaštićene pravima vlasništva njihovih nosilaca i ona ostaju zaštićena bez obzira da li su oni koji prenose te informacije to naveli ili ne. Osim informacija koje su u javnom vlasništvu ili za koje dobijete dozvolu, nemate pravo da kopirate, modifikujete ili na bilo koji način menjate, objavljujete, prenosite, distribuirate, izvršavate, prikazujete ili prodajte bilo koju informaciju zaštićenu pravima vlasništva. Slanjem informacija ili sadržaja na bilo koji deo DevProTalk.com, Vi automatski dozvoljavate i predstavljate garanciju da imate pravo da dozvolite DevProTalk.com ili članovima DevProTalk.com bespovratnu, kontinualnu, neograničenu, globalnu dozvolu da koriste, kopiraju, izvršavaju, prikazuju i distribuiraju takve informacije i sadržaje i da iz takvih sadžaja koriste bilo koji deo u bilo koje svrhe, kao i pravo i dozvolu da koriste gore navedene sadržaje. Svi zaštitni znakovi (trademarks), logotipi, oznake usluga, firme ili imena proizvoda koji se pominju na ovom web sajtu su vlasništvo kojim raspolažu njihovi vlasnici.