Aller au contenu principal Aller au pied de page

Les frameworks

«  Organiser le code dans une structure rigide, pour éviter les bugs et faciliter l’entraide  »

Retour

Les frameworks en deux mots

Concept

Un framework (cadriciel) est un « cadre » dans le développement. C’est donc quelque chose qu’on peut retrouver dans différents domaines du développement (CSS, JavaScript, langage algorithmique…) On se force avec un framework à suivre une certaine organisation et certaines pratiques. Cette organisation et ces pratiques sont imposées par le framework. Par exemple :

  • Respecter une organisation précise dans les dossiers et fichiers de code
  • Respecter des règles de nommage pour les variables, objets et bases de données

En contrepartie de ces règles, le framework permet de rendre plus rapide le développement. Ainsi :

  • Des comportements classiques peuvent être autogénérés
  • La sécurité est gérée automatiquement par le framework (dans une certaine mesure)
  • Tout le monde code pareil, ce qui facilite l’intégration de nouveaux dev dans l’équipe

Exemples de comportements auto-générables

  • CSS : Jolis boutons, site responsive… voir notre fiche dédiée au langage CSS
  • Web client : auto-sauvegarde des données saisies, temps-réel, validation…
  • Web serveur : sécurité liée aux API, gestion de comptes, mailing…
  • Langage pour des logiciels : accès au système d’exploitation…

Les frameworks nécessitent de nombreux fichiers de code à télécharger (en général un ZIP sur le site de l’éditeur). Ce ne sont pas des logiciels mais des fichiers de code à intégrer directement à notre projet.

Les frameworks sont la plupart du temps développés dans le langage qu’ils servent. Par exemple, Tailwind est codé en CSS et Laravel est codé en PHP.

Les frameworks les plus connus

CSS

  • Bootstrap
  • Tailwind

Web client (JavaScript)

  • jQuery (ce n’est pas tout à fait un framework, est de moins en moins utilisé)
  • React (ce n’est pas tout à fait un framework)
  • Vue
  • Angular

Web serveur

  • ASP.NET, WCF (C#)
  • Struts, JSF, Spring (Java)
  • Laravel, Symfony, Zend Framework, CakePHP (PHP)
  • Flask, Django (Python)

Logiciels

  • Electron (NodeJS)
  • WPF, WinForms, Xamarin (C#)
  • Swing, JavaFX (Java)

Découvrir d'autres thématiques

Si nous avons réussi à piquer votre curiosité et que vous souhaitez découvrir d'autres fiches thématiques :