The Clash of MVC Frameworks!

Today, I have been bumped by an wild idea to make a comparison between “most popular” MVC frameworks. Idea is to create simple web application but it will have at least one many-to-many relationship in it . The application will be something that I got on my job to make, and because of its OS architecture (Linux) we decide to be a PHP application. It is fairly simple and tomorrow when I got my mind set it on more for this application I’ll make an data model.
Initially I wanted to be done with Zend Framework but we have an Debian machine for this application, and even after upgrade it had a PHP version 5.2.0 (first he had 4.4.4?!!!), but for Zend Framework prerequisite is PHP version 5.2.4+.
So, today I started coding with CakePHP, and I didn’t try to copy/paste code. I write all, and had a lots, lots and lots of errors. Uh, this PHP (for me) is so unnatural to write. Funny, I had most of errors on forgetting to add semicolon on the end (but almost never have this problem in C#), and else I had problems with OOP syntax in PHP (which I totally dislike), uh, so many errors. Probably because I’ve been coding with PHP but very rarely OOP related, most of , was as with all others so called ‘spaghetti code’. And by all means I really didn’t mean to spit and tell that PHP is bad language, because it is highly used and it can be learned very fast, and it is also very powerful especially since PHP 5, but it is missing some language elegance. And for sure CakePHP is a great MVC Framework…
Ok, enough about PHP and me, back to MVC frameworks. Idea is to make this little application in this MVC frameworks:
- CakePHP (PHP)
- ASP.NET MVC (C#)
- Ruby on Rails (Ruby) – or maybe Sinatra if I go totally mad with it
- Groovy on Grails (Groovy) – ? (Time will tell)
- Django (Python) – ? (Time will tell)
- Lift (Scala) – ? (Time will tell)
As you can see there will be no true Java MVC like Spring because all of this frameworks mentioned up are (for me) clones of Ruby on Rails and they are RAD frameworks or ones for quick development of web application. Driven by Convention over Configuration (CoC) paradigm which Java MVC frameworks very lacks! But believe me I have nothing against Java frameworks, they prove themselves through years and I would really like to do something in Spring or Spring.NET! And maybe I shall one day…
If I forget some good framework, please tell it or you would rather see some other framework instead of this. Write them then, don’t be shy?


Posted under: