Projet web : les questions à se poser pour bien choisir ses langages de développement
Quelles questions devez-vous poser afin de faire les bons choix dans les technologies qui vont vous servir à créer votre projet web ? Qu’est-ce qu’une stack technologique ? Comment orienter votre décision dans le langage de développement qui sera choisi pour développer votre produit ?
Les choix technologiques entrepris dans le développement d’un produit informatique est l’une des composantes du succès de votre projet web.
Une technologie de développement n’apporte pas de fonctionnalité propre mais elle va conditionner votre projet web sur de nombreux aspects.
La stack technologique
Selon votre niveau technique, la question peut être étudiée de différentes façons. Cela étant dit, à la fin c’est plusieurs technologies de développement qui seront choisies.
La tech stack représente les différentes couches technologiques nécessaires au développement d’une application web.
La stack technologique se compose de trois couches :
- Le langage de développement,
- Les outils de développement (Framework, Api, solution logicielle etc.),
- Le système de gestion de bases de données.
Critères de choix d’un langage de développement
Une liste de critères sont à examiner pour faire le choix du langage de développement le plus adapté à votre besoin.
L’industrie du développement logiciel est un domaine assez récent qui ne prévoit pas de processus défini et formel concernant les technologies de développement. Malgré cela, les critères évoqués ci-dessous donnent un focus sur les points qu’il est bon d’analyser.
L’expérience du prestataire
Quelle est l’expérience du prestataire en développement informatique dans le ou les langages de développement choisi ?
Il n’est pas conseillé de se lancer dans un langage dans lequel vous disposez de ressources qui ont peu d’expérience.
L’environnement technique
Quel est l’environnement technique du projet ? Quelle est l’infrastructure envisagée ?
Le niveau de sécurisation de l’application est également un facteur qui peut diriger vers un langage plutôt qu’un autre.
La performance
La performance de la technologie est une donnée à vérifier sans pour autant discriminer votre choix dans des cas précis. L’essentiel reste de développer une plateforme proposant des temps de réponse de l’ordre de 500 ms. La plupart des langages de développements connus remplissent cet objectif.
La vitesse de développement
Selon les objectifs de votre projet, la vitesse de développement attendue peut varier. Dans le cas de la réalisation d’un MVP (Minimum Viable Product) votre impératif sera de développer vite pour un test rapide sur le marché. Twitter, pour ne citer que lui, a été développé initialement avec Ruby et Ruby on Rails. Ensuite pour répondre à des problématiques de performances Java et Scala ont été progressivement intégrés.
Votre application ne doit pas nécessairement être développée par la même technologie durant toute sa durée de vie.
L’écosystème : outils et communauté
Prendre en compte l’écosystème dont bénéficie le langage est un point important. Son écosystème inclut les outils mis à disposition des développeurs et l’étendue de la communauté autour du langage qui participe à son évolution. Des outils stables et une communauté active est préférable.
Le vivier de développeurs
Le potentiel de recrutement est un volet à considérer. Les développeurs sont une ressource très recherchée par les entreprises. Dans le cas où votre projet nécessite l’intervention d’un grand nombre de développeurs, privilégiez un langage pratiqué par de nombreux développeurs, où vous serez sûr de trouver les compétences nécessaires à la constitution de votre équipe, plutôt que langages où les profils se font plus rares.
La composition de l’équipe de développement est un point clé dans votre réussite.
La maturité
Enfin, orientez-vous plutôt vers un langage mature et stable. Un langage trop jeune ne vous permettra sans doute pas de couvrir l’ensemble de vos cas d’usage. Dans l’objectif de garantir une bonne productivité à votre équipe de développement, sélectionnez un langage où les développeurs ne seront pas bloqués trop fréquemment.
Pour finir, hormis les points énoncés ci-dessus : l’infrastructure visée, l’intégration dans un système d’information existant, ou encore la sécurisation de l’application, sont des facteurs qui peuvent orienter vers une technologie plutôt qu’une autre.
Chez Bocasay, nous constituons des équipes de développement sur mesure. Nous disposons de nombreux profils de développeurs sur différentes technologies.