Friday, September 5, 2008

Some thoughts about PHP

Since PHP 5 has contained most of the features of OOP (and the latest PHP 5.3 even supports namespace), people are keen on PHP OOP, framework, architecture, design pattern, etc. It is great to see PHP is evolving so fast and it is easy to understand that PHP users expect one day PHP can somehow compete with JAVA & .NET at enterprise market.

However, people seem to forget that PHP is hot and popular not because of its 'enterprise' level features, but the features like easy to use, easy to learn, flexible, simple, and fast for web development. Without these, PHP could never be as popular as today. It is quite natural that since PHP is used by more and developers and companies and getting more attention than before, it needs to turn to something not just a 'toy' programming language.

People are talking about PHP is becoming increasely similar with JAVA. But I think it is more and more like C++, which keeps all features of a procedure language while allows you to program in OO style as well.

It doesn't mean procedure programming is bad. Actually, many excellent software are developed in this way. If an application is robust, scalable, secure, efficient and less bugs mostly depends on the developers, the code quality, not those things like framework, OOP, etc.

Probably many PHP developers are coming from PHP 4. When they migrate to PHP 5, it looks like they are doing OOP, but actually they think in procedure way. These developers features with long, long, ugly codes in one function. Even a framework is chosed and design is done very well, the chance that you may still producing a buggy and hard to maintain application.

No comments: