Les frameworks, briques incontournables du développement web


Temps de lecture : 3 minutes
Share Button
framework - ORSYS

En proposant un ensemble d’outils et de composants logiciels associés à un langage de programmation, les frameworks permettent aux développeurs de gagner en productivité.

La traduction littérale du terme framework indique bien quelle est son utilité : ce « cadre de travail » structure la façon de développer et encadre les pratiques logicielles. Organisé selon un plan d’architecture et des patterns, un framework propose un ensemble d’outils et de composants logiciels.

Un framework vise ainsi à simplifier le travail des développeurs en leur offrant une architecture et une bibliothèque logicielle prêtes à l’emploi, sans avoir à réinventer la roue à chaque projet.
En permettant aux codeurs de gagner en productivité, le recours aux frameworks fait baisser les coûts de conception et de maintenance d’une application. Le cadre et les directives fournies améliorent également la qualité du code.

Les avantages du framework…

Les développeurs qui travailleront sur une application utiliseront la même structure, les mêmes standards de code. Les bonnes pratiques seront encouragées. Il est plus facile de travailler à plusieurs lorsqu’on adopte la même logique. Il en est fini des codes de développeurs solitaires, qui étaient difficiles à reprendre et à redévelopper pour les autres. 

Les frameworks les plus célèbres possèdent une large communauté. Le développeur n’est plus seul face à son code. Il est possible de réutiliser certains composants d’une application dans une autre application. L’utilisation du framework entraîne la réutilisabilité du code. Un framework évolue et se maintient dans le temps. Un petit bémol toutefois, quand les nouvelles versions ne sont plus compatibles avec les anciennes, mais cela arrive rarement.

 

Le mot en plus d’Alaric Hermant, expert référent du domaine développement logiciel **

On pourra ajouter qu’en déléguant à un ou plusieurs frameworks les aspects les plus techniques du fonctionnement d’un programme, le développeur peut aussi se concentrer sur ce qui compte vraiment : les aspects métiers. En plus du gain en productivité, cela permet une standardisation des compétences et des manières d’écrire un programme : une entreprise ayant choisi de baser ses développements Java sur Spring pourra embaucher un développeur ayant ce savoir-faire et celui-ci sera rapidement opérationnel.

… et les inconvénients du framework

Il peut notamment entraîner le chargement de bibliothèques lourdes qui ne seront pas forcément utilisées – ce qui peut avoir un impact sur la performance. Pour pallier ce problème, les frameworks proposent très souvent une version « light » (allégée) qui laisse le soin de charger dynamiquement  les bibliothèques dont  on a besoin.

Attention cependant : dès lors que le code écrit par les développeurs est lié à un ou plusieurs frameworks, cela peut à terme constituer une dette technique. D’une part il est possible que le framework impose certaines contraintes, d’autre part cela pose la question de la réécriture du programme si le framework cesse d’être maintenu par son éditeur ou si de meilleurs alternatives apparaissent. L’enjeu est donc de choisir des frameworks qui imposent peu ou pas de contraintes au développement. Ainsi l’écriture du code n’est guidée que par le métier, et le framework choisi aujourd’hui, pourra être facilement  remplacé demain.

**https://fr.calameo.com/read/00590644401eb1dffb04a

À noter également que l’utilisation d’un framework implique une période d’apprentissage. Cela demande aux développeurs d’en maîtriser les rouages, en plus du langage utilisé.

Par ailleurs, le choix d’un framework s’avère délicat, et ce parce qu’il est difficile d’en prévoir la pérennité.  Un framework très populaire aujourd’hui peut ne pas s’adapter à l’évolution technologique et devenir complètement obsolète en cinq ans, comme cela a déjà pu s’observer.

Frameworks back end et front end

Par définition, un framework est toujours associé à un langage de programmation comme Java, PHP ou Javascript. Même s’il existe un grand nombre de frameworks web open source, on peut classer les principaux selon leur fonction.


Sur la partie back end, on citera JEE, Spring Boot, Hibernate pour le monde Java, NodeJS, ou Express pour JavaScript, Symfony et Laravel pour PHP, .NET pour l’environnement Windows, Django pour Python ou Rails pour Ruby. Pour la partie front end, JavaScript, les .JS (Angular, React, Vue), Ember et Backbone sortent du lot.

jQuery n’est pas considéré comme un framework Javascript. Il ne possède pas la structure d’un framework. Nous parlons alors de bibliothèque de programmes. De plus, l’arrivée de nouvelles API et du support ES6 pour les navigateurs, ainsi que l’apparition des frameworks .JS, Angular, React et Vue, lui donnent de moins en moins de raison d’être et l’on peut penser qu’à moyen terme, il deviendra obsolète !


Pour se former :

Yves Rocamora - ORSYS

Yves ROCAMORA

Ingénieur en informatique diplômé de l’ENSIMAG, il a exercé pendant une dizaine d’années des fonctions d’ingénieur informaticien dans le domaine des nouvelles technologies, en agence et pour de grands comptes (Gaz de France, La Poste, RFI, Université Paris Diderot, Studios Eclair…). En 2015, il intègre le centre de formation Dawan en tant que formateur sur les technologies web. En 2020, il rejoint la société ORSYS en qualité d’ingénieur pédagogique au service Offre et Qualité, en charge du développement de l’offre « Technologies numériques ». Il est l’auteur de l’ouvrage « Comprendre PHP et Symfony » qui paraît en novembre 2020 aux éditions ENI.

Share Button

Laissez un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *