Glossaire

Comprendre les frameworks

Un framework de programmation est un ensemble de briques logicielles cohérent pour vous faire gagner en productivité et en qualité.

Chez SmartBooster, nous avons choisi d'utiliser Symfony comme framework backend et VueJs pour la partie frontend.

Qu'est-ce qu'un framework ?

Un framework est un ensemble de briques techniques construites pour fonctionner ensemble et destinées à apporter un cadre de travail stable dans le but de répondre à une problématique.

Le framework est un outil pour réaliser des développements plus stables, plus riches et plus rapidement.

Pourquoi utiliser un framework ?

Standardiser vos pratiques

Lorsque vous gérez plusieurs projets avec plusieurs développeurs, vous ne pouvez pas vous permettre de faire les choses différemment à chaque fois.

Un framework va vous apporter un cadre technique permettant à chacun de se repérer rapidement dans le code, que ça soit le sien ou celui de quelqu'un d'autres.

Cette standardisation vous permettra également de recruter et d'intégrer des nouveaux membres dans votre équipe plus rapidement.

Améliorer la sécurité

La sécurité technique est un monde complexe. Un framework vous apportera dès le départ une base robuste, éprouvée et améliorée depuis plusieurs années par des milliers de développeurs.

Un framework intègrera les dernières bonnes pratiques pour vous protéger contre la majorité des failles de sécurités courantes.

Gagner du temps

En vous évitant de réinventer la roue pour des tâches simples, un framework vous fait gagner un temps précieux dès le départ.

Par la suite, vous aurez également accès à

  • des mises à jour régulières
  • des retours d'expérience d'autres développeurs pour améliorer vos pratiques
  • des modules open source qui pourront vous apporter d'autres fonctionnalités en complément de celles du framework

Mis bout à bout, cela représentera plusieurs milliers d'euros sur vos budgets que vous pourrez investir sur des activités à plus forte valeur ajoutée.

Rejoindre une communauté

Derrière chaque framework, il existe une communauté de milliers de développeurs et d'intégrateurs qui l'utilisent et le font progresser au quotidien.

Cela représente une source d'échange précieux qui vous permettront d'améliorer vos pratiques.

En effet, la communauté sera présente pour fournir du support, faire des tutoriels, des retours d'expériences et pour les plus célèbres des conférences.

Comment choisir un framework ?

Une communauté importante et active

Le choix d'un framework est une décision stratégique qu'il ne faut pas prendre à la légère !

Vous devez choisir un framework solide qui vous apportera de la stabilité sur le long terme.

Pour cela, nous vous conseillons de prendre comme premier indicateur la taille et le professionnalisme de la communauté qui l'utilise :

  • nombre de contributeurs sur GitHub
  • cycle de release
  • nombre d'articles et d'entreprises parlant du framework sur internet

Une documentation claire

Un framework est un outil avancé, il est nécessaire de pouvoir s'appuyer sur une documentation complète pour monter en compétence et comprendre rapidement les subtilités des fonctionnalités les plus complexes.

Un framework qui correspond à votre besoin

Ne choisissez pas votre framework sur la seule base de sa réputation.

Vous devez absolument valider qu'il correspond à votre cas d'utilisation. Sinon vous perdrez tout le bénéfice de l'outil lorsque vous devrez trouver des moyens de le détourner.

Un test pour valider que tout va bien

Faîtes toujours un test des 2 ou 3 frameworks afin de bien valider que vous êtes complètement à l'aise avec.

En effet, lire la documentation est une première étape, mais vous devez vous assurez que vous arrivez à l'utiliser pour atteindre vos objectifs.

Lorsque vous choisissez votre framework, nous vous conseillons de commencer par définir la liste des points à tester en spécifiant un prototype que vous tenterez d'implémenter avec chaque outil.

Quels sont les frameworks les plus connus ?

Vous l'avez compris, un framework est un must lorsque l'on veut faire de la programmation de qualité.

C'est pour cela qu'il existe des frameworks pour chaque langage de programmation.

  • PHP : Symfony, Laravel, CodeIgniter...
  • Java : Spring, Apache Struts, Play...
  • Ruby : Ruby on Rails, Sinatra, Padrino...
  • Javascript : VueJs, ReactJs, Angular...
  • Python : Django, web2py, Zope, Tornado...

Lors de votre choix, aller voir ce qui se fait sur des technologies plus matures que la vôtre. Cela vous donnera des idées de mise en place et d'évolutions futures des outils.