Click to See Complete Forum and Search --> : CMS vs Framework
icu222much
07-06-2011, 12:04 AM
I am wondering what is the difference between a CMS and a Framework?
From my understanding, a CMS is a pre-built system that allows you to quickly add/modify content. It gives the average user enough flexibility to change what your site does by installing modules and themes.
A framework is a system, sort of like a CMS, but grants you even more flexibility with your site as you are to write all of the code yourself.
I am wondering if my understanding of a CMS and Framework is accurate?
If so, I am wondering why is it so important to use a CMS or Framework to develop your websites? What are its benefits? I still don't quite understand that part.
NogDog
07-07-2011, 09:50 PM
With a CMS, all the programming code is already written, and the user just inputs data for the site (pages, blog posts, whatever -- see Wordpress, for example); unless, of course, you want to modify the underlying source code or create a custom plug-in for it.
With a framework, you actually write the code to implement the web site (or whatever it is you are building), but you start with some ready-made code that defines the general structure of the software (not the site's structure, mind you) and which usually provides many functions/methods for handling typical coding tasks. The idea then is that the developer spends a larger percentage of his/her time on the actual "business" code and less on the detailed nuts and bolts (i.e. "framework") upon which that business logic is implemented. Check out the CodeIgniter tutorials (http://codeigniter.com/tutorials/) to get a feel for what this means.
If a particular CMS provides a large majority of the functionality as well as look and feel that you need, then it is probably a good solution for you (with a possible caveat being how efficient its code is and how scalable, should your site's traffic and growth require it). But if you would need to make a lot of modifications to a CMS to get it to work the way you want, you might actually be able to develop the site more efficiently on top of a framework, so that you don't spend lots of time trying to figure out what to change and how to change it in a bunch of CMS code you did not write -- also dependent on how well you know the framework you would work with instead, of course.
icu222much
07-11-2011, 12:31 PM
So when you are working with a framework, do you develop it locally, then upload to your server?
How about for updating your framework? Do you also develop locally, then upload to server?
NogDog
07-11-2011, 12:51 PM
Normally I develop locally, then upload everything to the server when I think it's solid enough to try it out in the "real" environment. From that point on, I only need to upload files that change as I fix bugs and add features. I have never yet had reason to update the actual framework code once it was deployed, but if I did, I'd first update it locally and test it before uploading it to the live site, probably to a separate directory so that I could validate that it still worked correctly, then rename the directories once I was sure it was good to go.