Oh my, i love web development. Creating a complete new world, with loads of functionalities, lots of categories, different information by different queries, and the complex problems that i enjoy solving, makes it the perfect job for me. I do not ever remember being frustrated (except for a problem that does not surrender to my superior thinking skills) while doing web development. Is just me when 5 stacking up complex lego structures, but with the text editor and the LAMP Server. I love creating e-commerce websites, web applications, personal blogs, tech blogs, Q & A websites, infomecials.
And i love having my job made easier for me so i can finish my task much faster. This is where the PHP frameworks come in to my rescue and take the daunting task of building the lowest things ( the session handler, the database abstraction, the URL resolver, the REST server, and all that jazz) from my hands so i can concentrate on doing something more important like building an attractive prototype, using my own MAVC design pattern for the view to send information to the controllers via AJAX, write the JavaScript, have the controllers send updates like in Facebook to the user’s view, and generally modifying the user interface / functionality for the better. Oh, and i also forgot, implementing nice features.
So, if the frameworks ease our job, the good ones will do the job of easing our job much better. This makes me reach the conclusion that we must locate the best out of the best.
So let’s start with my favorite one:
1 – Laravel
Laravel is a web application framework with a very elegant syntax design, out of the box ORM for handling the database in a human-readable fashion, and a very beautiful templating engine called blade that replaces the PHP’s ugly alternative syntax.
Having said that, Laravel also is capable of:
- Loose coupling and dynamic instantiation via the IoC Container
- Awesome Routing feature to build REST Controllers
- A default SMTP server configuration that works pretty good for sending messages out of the box
Enough of Laravel, let’s talk about the second favorite of mine:
2 – CodeIgniter
CodeIgniter is the first PHP Framework that i started working with, and is one of the easiest frameworks to set-up, learn, and start working. I remember being able to use it fairly well without having to practice it’s usage (The syntax and the function set is very organized).
The only that annoys me in this framework, is that, i have to write all the models myself (save the function that i made for doing SELECT WHERE’s with the string from the $column_name argument for my convenience ). It is a pretty tedious process to me (as i tend to deal with an amount of tables in my applications and have to write a separate model for each table in the damn database).
The main features are:
- Full MVC like the majority of the PHP frameworks out there
- Very good session library that i use for authentication with no issues
- Very light and fast if you know how to use it correctly.
This is all about CodeIgniter for now.
Thanks for the read and see you soon!