Pour comprendre la raison d'être de ces 2 outils que sont le CMS et le framework, il faut remonter à la préhistoire du web quand les sites internet se faisaient à la main. A cette époque, les "webmasters" utilisaient des éditeurs pour créer des pages HTML qu'ils uplodaient ensuite sur le serveur. Celà restait relativement gérable pour des sites d'une trentaine de pages, toutefois pour les sites comportant 50 pages ou plus des problèmes de maintenance commençaient à apparaître. C'est à ce moment que les CMS et les frameworks ont commencé à émerger.
Un CMS Content Management System (Système de Gestion de Contenu) est une application qui permet de gérer du contenu (articles, blog, produits...) de façon automatisée. Fini les pages HTML à éditer ou à mettre à jour à la main, le CMS s'occupe de tout. Parmi les CMS les plus populaires citons bien sûr Wordpress qui doit son succès à sa prise en main rapide. Viennent ensuite des CMS plus complets et aussi plus adaptés au développement comme Joomla, Drupal ou encore Typo3.
Parallèlement aux CMS, les premiers frameworks ont commencé à faire leur apparition dans le courant des années 2000. Un framework est une espèce de grosse boîte à outils qui permet aux développeurs de rapidement créer un site web et ses fonctionnalité sans avoir à repartir de zéro à chaque fois. Des frameworks comme Laravel ou Symfony s'adresse en priorité à un public averti, toutefois la facilité d'utilisation (toujours améliorée) font que certains frameworks ont doucement commencé à concurrencer les CMS.
Il semblerait d'ailleurs que l'âge d'or des CMS soit aujourd'hui révolu. Mis à part Wordpress qui continue d'attirer un public novice en informatique grâce à sa prise en main facile, les mastodontes comme Joomla, Drupal ou encore Typo3 n'ont plus vraiment le vent en poupe. Les frameworks actuels proposent quasiment toutes les fonctionnalités standards d'un site web "out of the box". Il est donc très facile aujourd'hui pour un développeur de mettre en place un site web opérationnel en quelques heures. Pourquoi s'encombrer de l'architecture (souvent très complexe) imposée par un CMS ainsi que de ces pléthores de fonctionnalités lorsqu'on peut développer un site web sur mesure avec juste les fonctionnalités nécessaires ?
Les CMS sont aujourd'hui utilisés en majorité par les entreprises informatique qui les ont adoptées il y a plusieurs années déjà et sont habituées à travailler avec.
Quant au frameworks, ils se sont démocratisés et occupent aujourd'hui une place importante dans l'univers du développement web.