Zend Framework 2

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Kees Schepers

kees Schepers

04/12/2012 17:41:22
Quote Anchor link
Waar ik benieuwd naar ben; wie is hier al volop bezig met Zend Framework 2? Ik zelf stelde het best wel lang uit omdat hij nog niet stable was maar ben er van de week dan toch maar mee aan de slag gegaan.

Ik vindt de modulaire set-up (net als met de bundles in Symfony2) echt super maar werken met een service manager aka di container is wel nieuw en wennen voor mij net zoals die vele arrays configuraties.

Ik ben zelf een klein projectje gestart op Github om er eens mee te spelen en heb al doctrine2 goed geintegreerd nu. Ga er komende avonden verder mee.

Ik zit er aan te denken om een flinke tutorial te bouwen over ZF2 met Doctrine2 maar ben benieuwd wie daar in geintresseerd is of zelfs me wilt helpen? Dan plaats ik de tutorial gewoon op Github en kunnen we met pull-requests elkaar helpen :)

https://github.com/keesschepers/kmailer
Gewijzigd op 04/12/2012 17:43:31 door Kees Schepers
 
PHP hulp

PHP hulp

16/04/2024 14:19:50
 
Wouter J

Wouter J

04/12/2012 17:55:42
Quote Anchor link
Ik heb de code eens bekeken en moet zeggen dat ik het er ook wel leuk uit vind zien. Helaas nog geen tijd gehad om eraan te werken, het staat voor de komende kerstvakantie op de planning.

Een tutorial: Geweldig idee. Aangezien ik al een jaar werk met Symfony2 en daarbij met bundles (modules), DI (service manager) en dat soort dingen kan ik eventueel daar mijn steentje in bijdragen.
 
Niels K

Niels K

04/12/2012 18:52:02
Quote Anchor link
Ik heb een paar kleine testjes uitgevoerd met Zend framework 2. Dat beviel me in eerste instantie goed. Voor echte uitspraken zou ik er nog een aantal projecten mee moeten uitvoeren dus dat houd je nog van mij te goed.

Voor een tutorial ben ik uiteraard altijd te porren ;-)
 
Marco PHPJunky

Marco PHPJunky

04/12/2012 19:51:50
Quote Anchor link
Persoonlijk heb ik het helemaal niet op het Zend Framework.

mede omdat in eerste instantie het enkel een collectie functies en classes/libraries was en daarna pas het MVC begrip/principe eromheen gebouwd is.
Ook omdat het aan de zware kant is als ik het vergelijk met andere frameworks (symfony, cakephp, CI, kohana)

Het kan niet altijd op elke share hosting gedraaid worden.

Maar daarbuiten is het een geweldig framework en een geweldig idee om hier een compleet en uitgebreide tutorial over/voor te maken.
 
Wouter J

Wouter J

04/12/2012 19:53:56
Quote Anchor link
Marco, OO is iets dat je opbouwt uit vele losse functies met daaromheen een paar klassen die alles aan elkaar koppelen. Symfony is juist een framework dat daardoor gekenmerkt wordt.
 
Kees Schepers

kees Schepers

04/12/2012 19:55:09
Quote Anchor link
Wat bedoel je precies met 'zwaar'?

Wat betreft het MVC gedeelte, jij praat echt over 2006 toen er inderdaad nog niet echt MVC in zat nee, maar wat is daar slecht aan? Die tijd was MVC niet zo vanzelf sprekend als nu.

Volgens mij is op shared hostings symfony net zo lastig als ZF(2) om te draaien, kun je uitleggen wat je bedoelt?
 
Marco PHPJunky

Marco PHPJunky

04/12/2012 19:59:18
Quote Anchor link
Ja wouter dat klopt maar als je het mijn reactie leest zeg ik ook helemaal niks over Symfony.
Enkel juist dat het lichter en in mijn optiek beter is dan het zend framework.

Het ging er meer om dat het mvc concept bij zend er pas veel later in/bij is gebouwd nadat ze zagen dat de meeste frameworks om hen heen het gebruikte en daarmee succes hadden en niet zozeer van wij bouwen en bieden en goede concrete oplossing maar meer van wij bieden een 'wisselende' oplossing.
 
Wouter J

Wouter J

04/12/2012 20:06:48
Quote Anchor link
Quote:
wij bouwen en bieden en goede concrete oplossing maar meer van wij bieden een 'wisselende' oplossing.

En dat is ook precies wat ik tegen ZF heb. Symfony heeft succes met zijn bundles (zie http://knpbundles.com/ ) en dus bedenkt Zend de modules, Symfony heeft succes met DI en dus bouwt Zend DI in. Als je toch iedereen en alles na gaat bouwen kun je beter stoppen met je project en dat ene succesvolle project (symfony in dit geval) helpen beter te worden. De PHP community kent veel te veel 'concurrentie'. We kunnen trots zijn dat we deel uitmaken van 1 van de grootste script communities in de wereld, wat er alleen is is dat we in postzegeltjes leven. Als we nou eens als een community gingen werken, zoals de Python en Ruby communities, waren we een stuk verder gekomen.

Merk op dat je dat niet alleen met ZF en Symfony hebt, er zijn duizenden te herkennen: Als we PHPmailer hebben waarom dan zonodig Swiftmailer bouwen? Als we Doctrine hebben, waarom is Propel dan nodig? Als we een SonataAdminBundle hebben, waarom hebben we dan nog een AdmingeneratorGeneratorBundle nodig?
 
- Raoul -

- Raoul -

04/12/2012 20:17:49
Quote Anchor link
Wouter, ik vind nu wel dat je het te oppervlakkig bekijkt. De ene implementatie kan ook wel eens beter zijn dan de andere... en iedereen heeft een andere voorkeur op vlak van implementatie van 'dingen'.
Gewijzigd op 04/12/2012 20:20:34 door - Raoul -
 
Rory S

Rory S

04/12/2012 22:13:01
Quote Anchor link
Kees zelf ben ik ook geïnteresseerd in je tutorial :). Succes!
 
TJVB tvb

TJVB tvb

04/12/2012 22:32:14
Quote Anchor link
Ik ben zelf even naar ZF2 gekeken en krijg het idee dat het wat makkelijker is om onderdelen te vervangen dan met ZF1

Wel vind ik de documentatie niet zo duidelijk waardoor ik me snel afvraag wat ik nu precies wel en niet moet doen.

@Wouter, volgens mij kijken de meeste software pakketten naar concurrenten/collega's wat er goed en fout gaat om daar kennis uit te halen.

@Marco, CI, Kohana en Cakephp bieden ook duidelijk minder functionaliteit dan ZF

Ik moet eerlijk zeggen dat ik geen ervaring heb met Symfony dus de vergelijking daarmee geheel niet kan maken.
 
Kees Schepers

kees Schepers

05/12/2012 07:48:11
Quote Anchor link
Ik denk dat de voordelen van Symfony2 zijn is dat het beter door ontwikkeld is omdat het al langer bestaat. Althans dat merk ik nu in ZF2 onder de loep neem, het framework is wel stable inmiddels maar veel modulen die ervoor ontwikkeld zijn nog niet of zijn nog niet eens af. Ik vraag me ook terecht af of je nu al voor ZF2 moet kiezen als je een belangrijke applicatie zou bouwen met commerciële belangen. Misschien is mijn conclusie te voorbarig en ga ik nog even verder onderzoeken / spelen.

Wat ik overigens wil doen is een boilerplate maken met Zend Framework 2 + Doctrine2 + Authentication / ZFCuser / Bootstrap. En dan maak ik daar een tutorial op. Kan nog wel eventjes duren overigens, moet me eerst nog wat meer verdiepen erin ;)
 
Wouter J

Wouter J

05/12/2012 16:13:44
Quote Anchor link
Hmm, ben gister toch even gestart met ZF2 en vindt het nog veel te onduidelijk (zeer slechte documentatie). Ik ben nu bezig de SkeletonApplication om te bouwen naar een directory structure waar ik in geloof, dat lukt aardig. Waar ik me alleen irriteer is die eindeloze array configuraties. Weet iemand toevallig een methode om dat aan te kunnen passen? De Zend\Config component heeft namelijk vele parser, Xml/JSON/PHP/Yml, maar ze gebruiken de enige optie zonder parser (dat is niet eens de PHP parser). Nu dacht ik opzoek te gaan naar de Config dependency, die aan te passen en klaar te zijn. Alleen ik kan nergens deze Config service vinden, weet iemand waar de core services staan?
 
Kees Schepers

kees Schepers

05/12/2012 17:07:54
Quote Anchor link
Je moet dan bijvoorbeeld in de method getConfig in je module class dit doen:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
pulic function getConfig() {
    $config = new Zend\config\Ini('/path/naar/config.ini');
    return $config->toArray();
}


Of yml, etc maar dat snap je natuurlijk wel :)

Ik moet ook eerlijk zeggen dat ik die array notaties wennen vindt. Ik ben er ook nog niet helemaal uit, misschien ga ik toch maar eens verder met Symfony. Daarnaast is ook het probleem dat Zend Framework 2 wel stabiel is maar alle handige modules die daarvoor geschreven voor zijn nog zo unstable als wat zijn. Om maar een voorbeeld te noemen: zfcAcl en zfcUser etc.

Maar misschien moet ik niet te snel opgeven :)
 
Wouter J

Wouter J

05/12/2012 17:59:17
Quote Anchor link
Ah bedankt, dat was best wel logisch eigenlijk... En voor de main config kan ik gewoon de front controller aanpassen.

Quote:
Maar misschien moet ik niet te snel opgeven :)

Dat is ook de gedachte die ik in mijn hoofd heb. Want er zijn natuurlijk ook wel wat mooie dingen die ik de afgelopen dag heb gezien in ZF, maar helaas ook zoveel mindere dingen dat ik telkens weer wil stoppen.


Voor de volledigheid, de code hoort te zijn:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
<?php
public function getConfig()
{

    $config = new \Zend\Config\Reader\Ini();

    return $config->fromFile('/path/naar/config.ini');
}

?>
 
Wouter J

Wouter J

09/12/2012 22:17:50
Quote Anchor link
Ik ben nu 5 dagen bijna full-time met ZF2 aan de slag gegaan en heb veel ruzie met het framework gehad, maar ook wel wat mooie dingen gezien. Tijd om even mijn mening kwijt te kunnen:

Negatieve punten
Ik ben erg geschrokken van de slechte documentatie. Sommige dingen kloppen helemaal niet, er is nog maar 80% gedocumenteerd en je krijgt het framework beter onder de knie door in de eindeloze code te graven dan door de documentatie te lezen.

Het core framework is gebouwd op een manier die veel gebruik maakt van Event Dispatching en dus het Observer pattern. Nu ben ik wel een voorstander van dat pattern en vindt ik dat Symfony2 hem te weinig gebruikt, maar het zorgt er helaas ook voor dat je code erg onleesbaar wordt. Het is uren zoeken in het core framework om te vinden welke listener naar welk event luistert.

De basis ZendSkeletonApplication vindt ik zeer zwak. Ik ben daarom begonnen aan mijn eigen WjSkeletonApplication. Dat gaat gestaagd door, maar is nog lang niet klaar.

Positieve punten
Ik ben erg gecharmeerd van de EventManager module. Die is beter dan de Symfony Event Dispatcher, door dingen als targets en shared event managers.

Ook de DI module, die doormiddel van Reflection* klassen raadt welke services hij moet injecteren in de service die je aanvraagt vindt ik erg geslaagd. Het is dan weer jammer te noemen dat ZF2 dit component nauwelijks gebruikt en het ServiceManager module voor DI gebruikt en dan vindt ik weer de Symfony Service Container beter.

De Event Dispatching icm met hun goede module zorgt ook voor veel flexibiliteit. Even een nieuwe listener maken, die vastmaken aan een event op in de shared event manager en klaar ben je!
 

10/12/2012 20:38:17
Quote Anchor link
Inderdaad, de documentatie had wat beter gekund. Maar qua performance is het absoluut een verbetering tov zf1

@Wouter, zojuist heb ik jouw variant bekeken van de skeleton application, ziet er goed uit, wel valt het mij op dat jouw skeleton aardig op symfony lijkt.
Persoonlijk heb ik geen probleem met de array configuratie, en om eerlijk te zijn is er weinig verschil wanneer je dit wijzigt in yml.

Voor de geïnteresseerden, een tutorial over zf2/ZfcUser bestaat al, deze is gemaakt door Evan: http://blog.evan.pro/getting-started-with-the-zf2-skeleton-and-zfcuser
 
Wouter J

Wouter J

10/12/2012 22:28:49
Quote Anchor link
Quote:
zojuist heb ik jouw variant bekeken van de skeleton application, ziet er goed uit, wel valt het mij op dat jouw skeleton aardig op symfony lijkt.
Persoonlijk heb ik geen probleem met de array configuratie, en om eerlijk te zijn is er weinig verschil wanneer je dit wijzigt in yml.

Klopt, dat is ook mijn bedoeling. Merk trouwens op dat ik nog volop bezig ben met mijn skeleton application.

En array configuratie vindt ik echt rampzalig, yaml vind ik veel overzichtelijker. Merk op dat je trouwens alle configuratie types kunt gebruiken die Zend_Config_Reader in zich heeft.
 
Kees Schepers

kees Schepers

10/12/2012 22:46:00
Quote Anchor link
Wel top dat je het uitprobeert Wouter en niet direct afbrand zoals velen doen. Ik denk dat ik me wel bij jullie moet aansluiten wat documentatie betreft. Daarentegen ben ik wel goed bekend met Zend Framework1 dus misschien dat ik het daarom wat lichter neem.

Wat het performance gedeelte betreft deze zou zelfs slechter zijn als de oudere versie van Zend Framework. Er is dan wel getest met een Beta versie dus ik kan niet vertellen of de uitslagen nog kloppen: http://www.enrise.com/2012/02/zend-framework-2-performance/
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.