Un framework est quelque chose qui donne aux programmeurs la plupart des blocs de construction de base dont ils ont besoin pour faire une application.
Imaginez que vous préparez un festin pour 20 personnes. Vous allez avoir besoin d'un four, d'une cuisinière, d'un réfrigérateur, d'un évier, probablement de centaines d'ingrédients, d'ustensiles, d'assiettes - etc etc.
Un framework est comme une cuisine entièrement approvisionnée. Il a toutes ces choses prêtes pour que vous puissiez cuisiner avec. Vous - ou les personnes qui vous paient pour le repas - n'avez plus qu'à trouver ce que vous allez faire avec tout cela !
Il y a quelques inconvénients à avoir une cuisine toute prête. Peut-être que le four n'est pas tout à fait de la bonne taille, ou qu'il n'y a pas assez d'assiettes, ou qu'il vous manque certains ingrédients, mais pour la plupart, tout ce que vous voulez est là où vous pouvez le trouver et vous pouvez le faire fonctionner.
Programmer sans cadre, c'est comme essayer de construire la cuisine parfaite à partir de rien avant de préparer le repas. Vous devez d'abord décider de ce que vous allez faire. Si cela nécessite un four, vous pouvez décider soit d'acheter le four parfait, soit de construire votre propre four de fortune. Si vos ingrédients doivent être réfrigérés, vous pouvez trouver un moyen de les conserver au froid. Vous aimez peut-être certaines marques d'ingrédients ? Eh bien, vous avez la liberté de n'acheter que ces marques, au lieu de ce qu'une cuisine pré-stockée pourrait vous donner.
Il y a donc des avantages et des inconvénients aux deux. Mais la plupart des chefs préfèrent qu'on leur donne une cuisine organisée avec laquelle travailler lorsque le repas doit être prêt en une demi-heure, plutôt que de leur donner une ardoise vierge. Il en va de même pour la plupart des développeurs de logiciels !
.