(04-14-2015, 09:23 AM)mwhitney Wrote: Short-term backwards compatibility is how any platform maintains its existing user base, whether it is an OS, a programming language, an API, or a framework. Even if it requires an extra compatibility layer, it is usually worth the extra effort to provide an easier upgrade path for existing users.
The reason for this is simple: if I have to rewrite my existing application from scratch to move from CI3 to CI4, I then have one more reason to evaluate other frameworks and one less reason to stay with CI.
Some other PHP frameworks have resisted providing backwards compatibility, and many of them have suffered for it.
Yes. Why should we rewrite our application in every year or every 3 year?
It would be awesome if my CI application will work after 10 or 20 years!
I don't know it is possible or not. Maybe impossible. But backwards compatibility
is important for some projects.
We can write both code like below on CI3 now (using Compser):
Code:
$this->load->model('Product_model');
$product = new App\Model\Entities\Product;
If `$this->load->model()` will be removed, all existing users will have to rewrite
their applications to just loadĀ models. This is just an example of BC break.
I hope not to force rewrite and CI keep BC as possible. Keeping API is one of the
pros of CI, I think.