DevProTalk

Forumi IT profesionalaca
web development, web design, e-business, SEO


Idite nazad   DevProTalk > Web development i web aplikacije > PHP
Želite da se reklamirate ekskluzivno na ovoj poziciji? Javite se

PHP PHP aplikacije, Smarty, PEAR

Odgovori
 
Alati teme Način prikaza
Staro 22. 10. 2009.   #1
Bojan Zivanovic
profesionalac
Professional
 
Avatar Bojan Zivanovic
 
Datum učlanjenja: 06.06.2005
Lokacija: Pančevo - Pariz
Poruke: 287
Hvala: 6
8 "Hvala" u 8 poruka
Bojan Zivanovic is on a distinguished road
Pošaljite poruku preko Skype™ za Bojan Zivanovic
Default

Koristim Zend Framework na dva velika projekta i mogu reci da sam zadovoljan.
Izabrani su pre svega zbog opsirne dokumentacije i radi standardizacije (das novom programeru Reference Guide, naglasis deo o Coding Standardu, i udri)

Pre toga sam na jednom koristio Code Igniter, subjektivno mi je ZF dosta mocniji (koristimo dosta ZF klasa), ali posto nisam koristio CI i ZF na projektima iste velicine, ne mogu pouzdano reci.

Izdvojio bih kao minus samo Zend_Form, vise sam se tukao sa njim nego sto sam pisao forme, mogao sam rucno da napravim validacije po 60 puta... Taj nacin stilizovanja preko dekoratora je ok kada se savlada, ali je put ka tome poplocan frustracijama...
__________________
The knack of flying is learning how to throw yourself at the ground and miss.
Bojan Zivanovic je offline   Odgovorite uz citat
Staro 22. 10. 2009.   #2
bOkIcA
Bojan Abramovic
Professional
 
Datum učlanjenja: 16.01.2008
Lokacija: Novi Sad
Poruke: 232
Hvala: 30
47 "Hvala" u 30 poruka
bOkIcA će postati "faca" uskoro
Default

Citat:
Originalno napisao void Pogledajte poruku
Sto se tice CodeIgnitera, licno mi se ne svidja iz nekoliko razloga:
- php 4
- EllisLab - pogledajte samo njihov ExpressionEngine, slobodno bubreg da prodate ako zelite da platite sve features koje nudi. To pokazuje stav ove firme.
- spor razvoj
Za mene su sve ove stavke uglavnom prednost, mislim da ne treba da pricam zasto.
Kohana, koliko vidim, cesto menja pravce i stalno postoji veliki problemi sa kompatibilnoscu sa prethodnim verzijama te stoga po meni nije za koriscenje.

@Cvele: Kad kazes za CI prljav kod mislis na core ili na biblioteke?
U bibiotekama moze da se nadje prljav kod ali svaka biblioteka moze da se zameni novom ili samo pojedinacne funkcije i to izvan core-a.
Cak sam postovao jednu od takvih funkcija ovde pa sam skontao kako je bezveze napisana.

Inace bih voleo kada bi ElisLab napravio rewrite tj jednu php5 paralelnu verziju CI-a kako bi se u potpunosti iskoristile prednosti petice.
Svi ostali FW mi deluju robusno u odnosu na CI, doduse bar onako iz daljine tj na web-u... nisam ih probao pa mozda gresim.
bOkIcA je offline   Odgovorite uz citat
Staro 22. 10. 2009.   #3
ivanhoe
Ivan Dilber
Sir Write-a-Lot
 
Avatar ivanhoe
 
Datum učlanjenja: 18.10.2005
Lokacija: Bgd
Poruke: 5.320
Hvala: 104
2.344 "Hvala" u 583 poruka
ivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svima
Pošaljite poruku preko Skype™ za ivanhoe
Default

Problem sa FW je sto svi do jednog zahtevaju inicijalno ulaganje vremena i energije, da se shvati kako funkcionisu i da se sopstveni stil prilagodi njihovom, a sto si iskusniji i stariji to je sve teze. Takodje, svi ti leyeri i apstrakcije dovode do toga da kad dobijes tudji kod, a nisi iskusan sa konkretnim FW pozelis da nekoga ubijes...

Inace ja isto dobijem nervni slom od ORM-a. Po meni je to 10% zaista korisno, a 90% podilazenje programerima koji ne znaju SQL dovoljno da sami pisu upite. I onda umesto da odmah vidis sta se salje bazi, moras da gledas dokumentaciju sta koja metoda radi, da dumpujes query--ije i sl. da bi video zasto nesto ne radi. Secam se kako sam ja obozavao Delphi DB kompnente u mladosti, jer sam tada mrzeo baze, i bilo mi mnogo lakse da radim sa objektima... ali ako dobro vladas SQL-om, ORM ti je kao da plivas u perjanoj jakni.. just my $0.0.2, naravno...
__________________
Leadership is the art of getting people to want to do what you know must be done.

Poslednja izmena od ivanhoe : 22. 10. 2009. u 17:54.
ivanhoe je offline   Odgovorite uz citat
Staro 22. 10. 2009.   #4
bOkIcA
Bojan Abramovic
Professional
 
Datum učlanjenja: 16.01.2008
Lokacija: Novi Sad
Poruke: 232
Hvala: 30
47 "Hvala" u 30 poruka
bOkIcA će postati "faca" uskoro
Default

samo je pitanje koji ce odabrati
bOkIcA je offline   Odgovorite uz citat
Staro 22. 10. 2009.   #5
bluesman
Goran Pilipović
Sir Write-a-Lot
 
Avatar bluesman
 
Datum učlanjenja: 18.05.2005
Lokacija: Beograd
Poruke: 5.450
Hvala: 288
1.247 "Hvala" u 446 poruka
bluesman je osoba koju treba slušatibluesman je osoba koju treba slušatibluesman je osoba koju treba slušatibluesman je osoba koju treba slušatibluesman je osoba koju treba slušatibluesman je osoba koju treba slušatibluesman je osoba koju treba slušatibluesman je osoba koju treba slušatibluesman je osoba koju treba slušati
Pošaljite ICQ poruku za bluesman
Default

Govorim o onim "munjama" tipa belongsTo... hasOne... hasMany, pa razne schema, pa ti kao kreiraš relacije a onda ti "on" sam generiše querije. I ti tvrdiš da ne "ništa ne generiše sam"? Ko generiše mysql, ti ili fw?
__________________
Goran Pilipović a.k.a. Ugly Fingers Bradley f.k.a. bluesman
I don't always know what I'm talking about but I know I'm right!
bluesman je offline   Odgovorite uz citat
Staro 22. 10. 2009.   #6
nixa
Nikola Denić
Sir Write-a-Lot
 
Avatar nixa
 
Datum učlanjenja: 18.05.2005
Lokacija: Beograd
Poruke: 3.694
Hvala: 160
458 "Hvala" u 164 poruka
nixa ima spektakularnu aurunixa ima spektakularnu aurunixa ima spektakularnu aurunixa ima spektakularnu aurunixa ima spektakularnu auru
Pošaljite poruku preko Skype™ za nixa
Default

^ ti baš ne voliš ORM
__________________
Do not ask yourself what the world needs. Ask yourself what makes you come alive, and then go do that. Because what the world needs is people who have come alive
nixa je offline   Odgovorite uz citat
Staro 23. 10. 2009.   #7
ivanhoe
Ivan Dilber
Sir Write-a-Lot
 
Avatar ivanhoe
 
Datum učlanjenja: 18.10.2005
Lokacija: Bgd
Poruke: 5.320
Hvala: 104
2.344 "Hvala" u 583 poruka
ivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svimaivanhoe je ime poznato svima
Pošaljite poruku preko Skype™ za ivanhoe
Default

evo gledam nesto Kohanu, upit:
Kôd:
ORM::factory('user')->where('username', 'bla')->find();
generise sql:
Kôd:
SELECT * FROM users WHERE username='bla' ORDER BY users.username ASC LIMIT 1
nije li to debilno? Sam poziv ORM metode je duzi od SQL-a koji bi trebalo otkucati, a generisani upit je pun nepotrebnih stvari, koje u opstem slucaju mogu itekako da pogode performanse, a potpuno su nevidljive korisniku, on nece imati pojma da je upit takav dok se baza negde ne zakuca. I onda pogledas slow query log u bazi da vidis zasto se koci, i nadjes ovaj select, i kako onda u kodu pronadjes sta generise taj select? Nikako, moras da logujes upit po upit dok ne vidis odakle dolazi...

E sad, daleko od toga da sam ja protiv stvari koje povecavaju produktivnost, samo ja na to gledam iz drugog ugla nekoga ko cesto odrzava i prepravlja tudji kod, a ne samo da gleda kako da za sto manje vremena i truda napravi nesto sto koliko-toliko fercera.. ako je efikasnost rada jako bitna, a lose performanse se resavaju kupovinom jaceg hardwera, onda je ORM pristup super..
__________________
Leadership is the art of getting people to want to do what you know must be done.

Poslednja izmena od ivanhoe : 23. 10. 2009. u 00:17.
ivanhoe je offline   Odgovorite uz citat
2 članova zahvaljuje ivanhoe za poruku:
Staro 23. 10. 2009.   #8
jablan
VD IT Direktora
Invented the damn thing
 
Avatar jablan
 
Datum učlanjenja: 08.06.2005
Lokacija: Beograd
Poruke: 2.118
Hvala: 503
1.307 "Hvala" u 282 poruka
jablan je pravi dragi kamenjablan je pravi dragi kamenjablan je pravi dragi kamenjablan je pravi dragi kamenjablan je pravi dragi kamenjablan je pravi dragi kamenjablan je pravi dragi kamenjablan je pravi dragi kamenjablan je pravi dragi kamenjablan je pravi dragi kamen
Default

Citat:
Originalno napisao ivanhoe Pogledajte poruku
Kôd:
SELECT * FROM users WHERE username='bla' ORDER BY users.username ASC LIMIT 1
Sam poziv ORM metode je duzi od SQL-a koji bi trebalo otkucati,
To zavisi od konkretnog slučaja, od konkretnog ORM-a i od jezika. Nikako ne može biti neki univerzalni argument za ili protiv.

Citat:
a generisani upit je pun nepotrebnih stvari
Kojih? Ja vidim samo ORDER BY koji nisi eksplicitno zahtevao, a to se obično podešava na nivou modela. Svako ko ima imalo iskustva sa ORM-om znaće gde sve može da naglasi konkretan redosled.

Citat:
Nikako, moras da logujes upit po upit dok ne vidis odakle dolazi...
Rails u development okruženju štampa sve upite koje šalje na bazu zajedno sa vremenom izvršavanja, trejsovanje stvarno nije neki veliki problem u realnom radu.

Tačno je da FW-ovi uvode dodatni nivo apstrakcije, i nekom to ne prija. Ja samo mislim da u većini slučajeva objektivno nemamo potrebe da brinemo o tome šta se tačno događa ispod, u suprotnom bismo svi još uvek pisali CGI aplikacije u C-u ili asembleru.
jablan je offline   Odgovorite uz citat
Staro 23. 10. 2009.   #9
bluesman
Goran Pilipović
Sir Write-a-Lot
 
Avatar bluesman
 
Datum učlanjenja: 18.05.2005
Lokacija: Beograd
Poruke: 5.450
Hvala: 288
1.247 "Hvala" u 446 poruka
bluesman je osoba koju treba slušatibluesman je osoba koju treba slušatibluesman je osoba koju treba slušatibluesman je osoba koju treba slušatibluesman je osoba koju treba slušatibluesman je osoba koju treba slušatibluesman je osoba koju treba slušatibluesman je osoba koju treba slušatibluesman je osoba koju treba slušati
Pošaljite ICQ poruku za bluesman
Default

^ baš to. A ja čak govorim o komplikovanijim situacijama.
__________________
Goran Pilipović a.k.a. Ugly Fingers Bradley f.k.a. bluesman
I don't always know what I'm talking about but I know I'm right!
bluesman je offline   Odgovorite uz citat
Staro 23. 10. 2009.   #10
bOkIcA
Bojan Abramovic
Professional
 
Datum učlanjenja: 16.01.2008
Lokacija: Novi Sad
Poruke: 232
Hvala: 30
47 "Hvala" u 30 poruka
bOkIcA će postati "faca" uskoro
Default

ORM ne volim, komplikacija mi je kao i Smarty, koristim CI Active Record klasu.

u modelu funkcija za count npr:
PHP kôd:
    function count($lang 'en'){
        
$this->db->where('language'$lang);
        
$this->db->from('table_name');
        return 
$this->db->count_all_results();
    } 

ili get
PHP kôd:
    function get_all($lang 'en'$start_row 0$data_per_page FALSE$order_by FALSE$order_type FALSE){

        
/* ... cuted part ... */

        
$this->db->from('table_name');
        
$this->db->join('table_name_2''table_name_2.id = table_name.id''left');
        
$this->db->where('language'$lang);
        
$this->db->order_by($order_by$order_type);
        
$this->db->limit($data_per_page$start_row);
        
        
// execute query
        
$query $this->db->get();

        
// return data
        
if ($query->num_rows() > 0)
            return 
$query->result_array();;

        return 
FALSE;
    } 
Beneficije su automatsko eskejpovanje i mogucnost rada sa drugom bazom.

a uvek moze i pisan sql sa eskejp:
PHP kôd:
$sql "SELECT * FROM some_table WHERE id = ? AND status = ? AND author = ?";
$this->db->query($sql, array(3'live''Rick')); 
bOkIcA je offline   Odgovorite uz citat
Odgovori



Pravila pisanja
Možete ne započinjati nove teme
Možete ne slati odgovore
Možete ne slati priloge
Možete ne izmeniti svoje poruke
vB kôd je Uključen
Smajliji su Uključen
[IMG] kod je Uključen
HTML kôd je Isključen
Pogledajte forum

Slične teme
Tema Početna poruka teme Forum Odgovori Poslednja poruka
Mobile development frameworks robi-bobi Web aplikacije, web servisi i software 11 13. 09. 2010. 20:10
Frameworks i SEO martinluter Web aplikacije, web servisi i software 17 03. 08. 2010. 12:00
Frameworks performance arena: Symfony vs Rails vs Django Petar Marić Programiranje 5 21. 07. 2006. 13:46


Vreme je GMT +2. Trenutno vreme je 00:30.


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.