5 ms·
Frameworks vs. Libraries in PHP
- lyime 18y agohas anyone used Kohana php here?
- gigawatt 18y agoI'm in the middle of learning PHP with plans to learn a framework afterwards. I had pretty much decided on CodeIgniter since I'm such a big fan of ExpressionEngine, and EE 2.0 will be based on CI. But Kohana definitely looks interesting - based on CI, but with full PHP5 support. And the payment library looks particularly enticing. The one thing that makes me a little leery is that the CI docs looks a lot more complete than the Kohana docs, and I am guessing the CI community is more robust. I'd love to hear some feedback from anyone who has used both CI and Kohana...
- cousin_it 18y agoCan't help but link to IMO the best piece on libraries vs frameworks: "I’d really like to give you this fork Jimmy, but you’re gonna need a knife and plate to use it." http://an9.org/devdev/why_frameworks_suck http://an9.org/devdev/why_frameworks_suck
- SwellJoe 18y agoSounds like CPAN would be more his style, rather than hanging around in the library ghetto with Python. (I should probably be running now, before the snake handlers arrive, huh?)
- Hexstream 18y agoThat seems a gripe about monolithic frameworks... There's no reason a framework can't be organised as a coherent collection of libraries of which you can pick only the ones you need and that lets you assemble an "instantiation" of the framework by choosing a variant of each type module you need.
- cousin_it 18y agoHere's my humble perspective on code reachability and the fork/knife/plate thing. Good: a library function with no dependencies, that accepts and returns primitive data structures. Worse: a library with lots of dependencies, and a set of idiotic "data types" or "classes" I have to construct just to access the functionality. Worst: a "framework" that calls your code itself, and requires a specific "environment" that should be "set up properly".
- markbao 18y agoI use Kohana primarily. It is an excellent framework supporting only PHP5, with a great ORM engine and extensibility. It's fast, efficient, and organized. Their community isn't yet as strong as CodeIgniter's, but it's growing rapidly (2.2 just released!)
- jamongkad 18y agoBeen hearing alot of good things about this framework and community. Currently I'm submitting libraries to the CI hive. Will they be compatible with Kohana?
- markbao 18y agoDepends. It would probably need certain customizations to fit into the Kohana system. Definitely check into the Kohana IRC channel, the lead developers who ported the CodeIgniter libraries themselves will be in there and will be there to help you (#kohana on irc.freenode.net.) The fundamental differences (general structure, etc.) between Kohana and CodeIgniter are currently pretty low, so it shouldn't be too much.
- richtaur 18y agoEh, not much value in this article. Really, you take a fantastic set of tools like symfony, and shrug it off with a one-liner like "over-engineered?" Lousy and unfair.
- MrFantsyPants 18y agoI've been working on a symfony project for the last six months, and after it ends, I hope to never see it again. Over-engineered fits, but I also have issues with many of their choices. In the end, I would have built a better product in the time allotted using something else, even my own primitive codebase. Having come to know it pretty damn well, I'd have trouble recommending it to anyone else.
- pauljonas 18y agoI looked at Symfony, CakePHP, and a few others (at time, Zend was not anywhere near production ready), and all just seemed like (a) overkill or (b) inadequate. In the final analysis, I wrote my own framework. On the flip side, homebrew framework development has become a larger project in recent years. Nowdays, you need to include in AJAX integration, slicker client UI, mobile phone accommodation, web services API, multimedia handling, etc.... And you're going to be reliant on 3rd party libraries that you need to research, choose, perhaps configure and upgrade at intervals. Have used Rails for a few projects and it provided a constant stream of annoyances as anytime you attempted to do something that didn't quite fit into the DHH "vision", it was a hassle. Though I liked the DB migration setup in spite of the lock in to autoincrement integer keys.