Tuesday, October 21, 2008

The ideal PHP Framework

The ideal PHP Framework
http://dody.ws/framework-php-yang-ideal.html

Why do we need the framework?
For those of you not familiar with the framework, framework is a set of functions, classes, and rules. Unlike the library, which is only for a particular purpose, a comprehensive framework of how we manage to build applications.

Framework allows us to build applications more quickly because as a developer we will be more focus on the core issues, while matters such as supporting the other database connection, form validation, the GUI, and security; generally has been provided by the framework. Besides, the rules are clear and must be followed, the application of our more solid, more readable, and in kolabarasi team can be more easily implemented.

We as a software developer can dianalogikan as a fortune-building. When you see a fortune-building can make a home. Will not be a problem if only to build a house with one or two floors. But will be a problem when he got the job to build a multistory building. Problems will become more complex, more labor and material involved, yet again with a tight schedule. We also like that. Building a small application is not necessarily a problem. However, what if the application how small we are with the longer increasingly requirementnya in line with the needs of the user. Here is a very important role in building a framework application.

Framework, which according to my ideal

Since the phenomenon of Ruby on Rails, a framework for the Ruby language, which can provide exceptional facilities for the developer to build a web application; grow mushroom framework, which adopted a similar framework the ability of Ruby on Rails to other languages. For PHP itself, there is PHP on Track, symfony, PHPCake, CodeIgniter, and many others.

I have tried symfony, PHPCake, and CodeIgniter. Symfony have the most complete facilities, there is a command line interface to build relational Object Model (ORM), which translate into relational database program code; support AJAX; scaffolding, which is to create mechanisms CRUD (create, retrieve, update, and delete). Unfortunately symfony only run on PHP5. Is not a problem, because it has a lot of web hosting that provides PHP5. What I feel is that the symfony framework is very solid. I love the facilities ORMnya, scaffolding complex, and the tutorials and documentation that is very good and comprehensive. How not good, other than that provided User Guide contains the API reference, also provided a case study book contains askeet start making applications from the initial design to finished encoding according. In addition, there are also tutorials in the form of movie files, but because of the size of a large, I uncooperative downloading, I feel sufficiently with the manual pdf form. In contrast, I also feel that symfony is as heavy weapons grade. For allowing it to take the learning curve is quite long. I also feel the strength out of control, which happens when I want a change, which is rather different from the tutorial provided, as I do not have to know where and how. I'm trying to survive for 3 days to try to make the application simple, but in the end I decided to stop.

Next is CakePHP, this framework also has the ORM and scaffolding as well as symfony. There are also command line interface, known as the Baker, however, are not absolute use. Overall CakePHP have the ability not far from symfony, but more simple glance and smaller size, and that no less interesting is the compatibility with PHP4. Unfortunately, the documentation is less complete, so I find difficulty in more information. Chantal is CakePHP IRC channels open so that we can consult directly with the pakarnya. I have tried to ask the problems in the IRC channels provided. I get a satisfactory response from pakarnya (CakePHP developers), so I permasalahn when it can be overcome. However, at other opportunities, I did not get a response at all, I find people who have helped me before, but he is not online. I feel CakePHP can not give what I want, though I have tried the tutorial and read the other, I still do not great what I want, or can be my confusion, such as when trying to symfony.

CodeIgniter, this framework does not enter the list I will try. This is because by fiturnya far fewer than symfony and CakePHP. No ORM, scaffolding is very simple, no AJAX, no user authentication. So what can I expect from it? Ranging from reading the various reviews php framework in others, they said that CodeIgniter have a better performance than symfony and CakePHP, due by the library that is loaded by the framework fewer. After I try, the framework is very different. It feels lighter and more free. Although CodeIgniter also use the MVC design pattern, but it is absolutely not to use the M (model). So I can freely use the style that I like. Dish is quite complete documentation, although not as complete as symfony, but very adequate. I can do this after I read the guide in the online manual. It's fun, and where symfony CakePHP can not give it to me. Although they have the ability under the framework of other, but CodeIgniter very easy to learn. Perhaps this is the best lightweight framework. Very light and easy, but it does not have the facilities of other framework. When I observed the forum and a wiki page, CodeIgniter community to provide solutions to problems such as User Authentication and Ajax. It seems that the manufacturer deliberately CodeIgniter user to provide freedom to develop their own in accordance with the needs of each different, whereas CodeIgniter responsible for the tasks to other, more major.

For me CodeIgniter interesting, easy to learn, and very solid to build large applications. Regulations and it provides the library does not restrict me to keep menggunkan programming style that I like. This point is important. Who set up, programmers manage the program or programs set programmers?

source: mamat.amikom.ac.id

No comments: