Scroll Top

Le framework : revue d’usage pour votre framework


Vous avez un projet ?

#3 Culture et expérience

Les frameworks sont une pièce centrale du génie logiciel, de l’industrie informatique voire de l’organisation du travail.

Présents dès l’aube informatique, ils sont le témoin technologique qui a propulsé la transformation numérique des entreprises.

Avec chacun ses spécialités, les frameworks sont devenus incontournables grâce à leurs nombreux avantages opérationnels : structure, organisation et accélération du développement entre autres.

Cependant, face à ce cadre et à ses limites techniques, l’entreprise doit garder son ADN et créer son propre écosystème sans être enfermée.
Regardons comment équilibrer ces forces pour libérer la valeur de l’entreprise.

1. L’innovation au coeur des frameworks depuis 1960

Inventés en 1961 par Burroughs Large Systems Group, les frameworks sont conçus pour rattraper les concurrents sur le marché des ordinateurs.

Le Multi Control Program MCP a pour objectif d’être compétitif grâce à plusieurs caractéristiques :

  • une compatibilité logicielle,
  • un environnement de langage haut niveau,
  • instructions simplifiées,
  • traitement asymétrique.
Framework

Essor des années 80 : de l’invention au langage orienté objet

Des frameworks tels que Smalltalk 80 en 1980 ont été développés pour faciliter le développement logiciel orienté objet.

Ces frameworks avaient pour objectif de fournir un ensemble de classes et de méthodes réutilisables pour aider les développeurs à créer des applications plus rapidement avec ces avantages :

  • modélisation du réel : abstraction du réel, simplification des concepts,
  • réutilisabilité du code : héritage, classes, et objets,
  • modularité : décomposition de la complexité, circulation du code,
  • encapsulation : regroupement du code en données et méthodes,
  • flexibilité : polymorphisme, interfaces et classes abstraites.

Informatisation et addiction : du service à l’industrie dès 1990

Internet apporte une autre dimension informatique en étant le plus grand réseau mondial : le www pour « world wide web ».
Le premier site web est en ligne en 1991.

Comme tous les modèles, les frameworks se réinventent pour répondre aux progrès informatiques.
Les brevets sont suivis par des investissements massifs permettant le développement d’applications JAVA, et le framework .NET de Microsoft pour Windows.

2. Le framework : le cadre de votre transformation digitale

Exclusivement dédié aux développeurs, le framework est le centre de gravité entre les fonctionnalités de base et la logique métier de l’entreprise.

Puissance des frameworks
Les frameworks détiennent la fonctionnalité de base pour le développement informatique : l’automatisation des tâches courantes comme :

  • la gestion des bases de données,
  • les appels réseau,
  • l’authentification des utilisateurs.

Conventions et guides de bonnes pratiques assurent une autonomie indispensable face à la complexité des projets.

Vitesse de production
Bibliothèques et outils sont disponibles dans les frameworks pour étendre les fonctionnalités et enrichir les projets informatiques :

  • gestion de documents : images, pdf, factures,
  • qualité du code,
  • tâches courantes : validation des données (formats, texte),
Framework

Scalabilité et croissance

Les principaux facteurs d’adoption des frameworks sont le support et la documentation sur lesquels peuvent s’appuyer les développeurs face à la complexité.

Les frameworks permettent notamment l’intégration de technologies tierces dans une application.

Par exemple, une bibliothèque de framework pour le développement d’applications mobiles peut offrir des outils pour intégrer des services de notification push ou des plugins pour accéder aux fonctionnalités du téléphone.

Cela permet aux développeurs d’ajouter des fonctionnalités externes sans avoir à comprendre et à coder directement avec les API spécifiques aux technologies tierces.

Toutefois, gardons à l’esprit que ce n’est pas le projet informatique qui fait le projet d’entreprise.
Voici pourquoi il est important de connaître les obstacles potentiels que peuvent rencontrer les entreprises face aux contraintes logicielles.

3. Les limites du framework

Le coût
Selon les solutions évaluées, les entreprises n’ont pas les moyens disponibles et doivent externaliser leur production informatique.
Cela concerne également les prestataires informatiques qui doivent investir dans la formation interne, tout en ménageant l’équilibre commercial chez les clients existants.

La standardisation
La course économique des prestataires pousse aux frameworks, en économisant les efforts de personnalisation des réponses aux attentes, et donc de valeur.
Or, l’entreprise doit concevoir ses projets sur une réponse unique au marché pour se différencier.

La dépendance
Maintenance, mises à jour, compatibilité et même sécurité peuvent compromettre le choix du framework.
Une des solutions pour gérer cette dépendance est l’environnement virtuel.

La surenchère de fonctionnalités
La puissance et la performance sont liées à la structure du framework.
Si celle-ci présente trop de fonctionnalités, cela ampute l’application, ralentit son implémentation et déprécie sa valeur.

La complexité
Un framework peut solliciter des compétences techniques et du temps de développement supplémentaire incompatible avec les ressources du projet.

Une fois conscient de ces avantages et risques, les projets doivent revenir à la réalité de l’entreprise, des coûts et de l’organisation.

Framework
L’entreprise ne peut pas supporter toutes les limites ou la dépendance des frameworks. C’est l’entreprise qui fait le projet, pas le framework. Posons donc les critères des frameworks pour vous aider à choisir votre solution.

4. Choix du framework : au service de votre croissance

Le choix d’un framework est souvent influencé par l’environnement logiciel .

Même si les développeurs ont leurs préférences, le projet informatique passe par l’examen critique des frameworks sur des critères objectifs que voici :

  • objectifs du projet : type d’applications, fonctionnalités requises, performantes attendues,
  • langage de programmation : langage du framework, compétences requises, préférences,
  • stabilité et maturité : communauté, disponibilité, ressources, mises à jour,
  • performance : vitesse, consommation de mémoire, réactivité, personnalisation,
  • intégration : richesse de l’écosystème, plugins, compatibilité,
  • coût : évaluation, licences, frais de support, apprentissage ou formation.