开发者

Why ZEND uses interfaces and abstract classes everywhere while Codeigniter doesn't use them at all?

ok. So i grep'ed through Codeigniter 2.0 directory looking for interface or abstract keywords. I couldn't开发者_运维知识库 find Codeigniter using class skeletons anywhere. AFAIK and can see - CI only uses concrete class implementations.

Is not using abstracts and interfaces bad? Why does Zend framework utilizes them for every occasion while Codeigniter simply ignores this convention?


Zend is re-written on a regular basis implementing the newest PHP5 features which is great for them.

CodeIgniter has always been about portability and minimal requirements and was written when PHP5 was still in development with a very PHP4 approach to its architecture.

Now that CodeIgniter 2.0 is out support has been dropped for PHP4 and the requirement has been raised to 5.1.6. This doesn't mean every single file has been re-written in PHP5 because, well there's not much point in that. New features will be using PHP5 and we're working on bringing some of the framework up to date while trying really hard to not break things for applications using 2.0.


Scalability - this is the difference.

Besides, AFAIK Code Igniter is PHP4 based.

Edit after comment:

By saying based, I mean that it was written previously for PHP4, so it does not use all the newest PHP5 features from the core.

This is not only about OOP features, but also about some of the design patterns which are described by SPL.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜