First of all, I like to say all this below is just my uninformed opinions. The whole point of this blog is so I can mimic GTA4’s www.blogsnobs.com (what?).
Anyway, awhile ago I did a series of blurbs (retarded blurbs you may say) on my seat-of-the-pants experience with Django. To be honest, it was merely a dipping of the toe into the shark-infested water of Django; imho one should take what I had to say with a heavy dose of salt, for it was just my two week impression, that’s it, don’t read too deep into it. So I did say something along the line of template implies view, model implies model and other blahs. Well, it wasn’t precisely correct. I tend to do a lot of hand waving and blurbs. It was just me sitting here and putting my stream of thoughts out on this page, without reallying getting into too much of a detailed thought.
To me MVC is merely a pattern, useful for implementation of “separation of concern.” One can argue this and that, but to me, Django does have this sort of separation of concern. Sure, it may not be exactly like a desktop GUI application’s MVC, but the point is that it has this sort of MVC equivalent separation of concern generalization (Does it use encapsulation and abstraction to separate out different functions pertaining to view, controller, and data computation? Yes? Well, you know the saying: talks like a duck, smells like a duck, then it must a singularity!) When I say template == view, I really mean template + a servelet like thing on the server side. The “servelet thing” can handle request and response (and by operating with respect to the ‘model’ in Django). So Django is not neccessary MVC per-se, but it fits this MVC like separation of concern generalization.
The reason I said what I said is because I’ve just finished working with SEAM, which has this MVC-like seperation concern of thing going. With the “View” consisting of both the crap on the JSF side and EJB3 side. But please DO NOT QUOTE me on this. This is just a personal blog. I don’t have much experience with Web Development.
Also this entire web app. thing can also be argued to fit into this MVC pattern. With the web client the “view” and with the business logic / data (Model) residing on the server. Can one argue that the entire Client-Server architecture fits in with this MVC pattern also? IMHO one can make an argument for it.