I come here to tell first that Yii impressed me, i’ve bought a book on him plus agile and TDD development.
Then,
I’m in charge to choose THE framework that will be use for new PHP projects in my agency, Prometil. I will compare Codeigniter 2, to Symfony 2, CakePhp 1.3 (or maybe 2) and Yii (1.1.6).
I need some feedback on Yii in long and large project, on its modularity, on ORM or Datamapper you use, on good tips to use, on tests for TDD method, the roadmap of the framework and on him against the other (if you already had chosen him rather than the others).
Any informations, part of informations, url would be appreciate.
Before you start doing comparisons, I would rather wait for version 1.1.7 or test the latest ‘svn’ source. As it comes with major improvements as for example the query ‘caching’ feature.
I worked with Zend Framework for more than 2 years, its great but lacks the ‘agile’ and ‘performance’ factors
I also worked a bit with Cake, but didn’t like its modularity
Then I discovered Yii and its complete, extensible, great structure, easy to extend and create/use extensions, agile, extensible code generator and widgets, that avoids repetitive tasks, great performance and lots of built-in features
Also you can check its CHANGELOG to see how fast it improves
Perfect for me, and for a lot of people, probably you too
Well I have only just started to use Yii in the last few weeks and read the Yii Agile development book. Previously I have worked with other frameworks but mainly Zend, and although I think Zend is still brilliant, for building rapidly Yii has been amazing. I am building my fisrt app with Yii at the moment, and it has been a very refreshing experience.
It has been quick and easy to jump into and I find the documentation really easy to use. I like the structure of Yii and it seems to be the same type of architecture that I set out when building in Zend. In fact I have actually integrated Zend into my Yii app and so have the best of both worlds! It’s also much nicer having smaller class names than Zend (will be different in Zend 2 I know).
There is a nice level of control and it seems you can take as much control of the system as suits you. The bit that I am still getting to grips with is using widgets, as although they are useful for some areas, my work is generally pretty customised in the presentation layer, so I am gradually building my own rather than the default ones.
The best thing I have found so far, is the ability to just get in there and design/build. I am not developing this app using TDD and in fact there has been no major planning, as this app is my own project and is growing organically. I will tidy everything up later and set up unit tests etc later, but sometimes it is just important to build and get the app out of your head and into a reality before worrying about being too techie.
Within a week of finishing the book I have already got a pretty nice system built and have really enjoyed the development process (sad I know) as it has been so quick and instinctive. It is not finished yet, but I have been able to make very quick u-turns in the development which has been very important, and hopefully I will have something ready for actual launch in a month or so (after going back and cleaning up the mess I am making in rapid development!).
For me it is proving to be the perfect framework as it suits my style of development - you just need to find yours by trying them out.
I came to Yii from a CodeIgniter background. At first it took some getting used to but now when I look at CI code, it just seems really obtuse and clumsy.
CI documentation is more accessible, but Yii docs are thorough and once you get used to the docs, you can usually find what you need.
The community for CI and Yii are both fantastic.
I haven’t used other frameworks and I haven’t worked on anything that had the kind of realities that you are facing.
Give Yii a chance, I’m sure it won’t disappoint, in fact you will probably agree that Yii is brilliant!
I have done extensive php development with no framework which evolved into my own "lightweight" framework. I discovered PRADO about 2 years ago and vowed to stop development outside a proper framework. Recently moved to Yii and I am blown away by the depth of thought and completeness of it! Cant say much as far as performance goes as I havent tested it yet, but from a development point of view I love it.
I went through this same process myself about 18 months ago. All the frameworks you’ve mentioned on your list I rejected in favour of Yii and this was when Yii was in its 1.0 days. The Active Record implementation is very good and entirely optional if you need speed. The routing management is simple and quick to build. The JQuery integration is very good and the number of extensions and widgets usually means you can find a good fit for your needs. I’ve just setup APC on our production server, Yii performed acceptably before, same speed as our “framework” before, with APC it’s blink and it’s done.
One of my criteria was to bin frameworks that continue to support PHP 4.x, I believe this holds them back too much to consider. The MVC is clean and allows interface and server side to work side by side easily. If you have the time then build the same app in each as your project team and see which works best for you. That said, I recommend just jumping onto Yii, there’s too many useful things list.