Outgrowing CI

I keep hearing this argument that CI is only suitable for small to medium projects. Or that people outgrow CI after using it for a while.

What does this mean? That CI is not suitable for really large projects? Why not? Does this mean that its not good for projects with very high requests per second? Or that its not good for complicated projects because it doesnt have every feature available?

Personally...I love CI. Perhaps I dont have the necessary development background to understand how you outgrow a framework. Especially when you can just plug in libs/modules from anywhere else (including, for example, Zend).

Am I missing something here?

Please enlighten me. I am about to embark on a really large project...

I love to work with CI, but I find it hard to maintain complex projects over the time (several years), because I cannot easily:

- separate and isolate functionality, the newly introduced packages do not go far enough, third party HMVC solutions are not an option for me
- to keep a 100% unchanged code base across multiple installations (the config folder)

My solution is to isolate distinct parts of an project into separate applications, commonly required files exist in each app as file with a require statement.

I find that CI Database class hits a wall,

At that time I pickuped an ORM propel, then as mentioned above config files between instances become and issue, so I develop a few scripts to act as a build task.
I give the script a instance name and it copies the config,language and hooks for that instance back into the application.

I found pake very helpful for developing these scripts.

This is a no-brainer.

Since every PHP framework (Drupal, Joomla, Wordpress, etc.) is written with PHP, then raw PHP is the superset of all such frameworks.

Codeigniter is closer to raw PHP than most frameworks. That is, it uses less abstraction than the aforementioned frameworks.

It's not a question of outgrowing Codeigniter, it's a question of requiring more abstraction.

I use Codeigniter precisely because it abstracts just enough of PHP to make me happy and productive.

I can write lots of raw PHP but fall back on CI when I need to. I can even include PHP classes and functions that have not been written for CI (such as Zend classes).

If you need more abstraction, then use it, wherever it comes from.

[EDIT] I should say that I use Wordpress all the time for quick development where it suits. But sometimes, it's just too much.

Digg   Delicious   Reddit   Facebook   Twitter   StumbleUpon  

  Theme © 2014 iAndrew  
Powered By MyBB, © 2002-2021 MyBB Group.