Les types de développement informatique : Web, mobile, logiciel et embarqué

Les types de développement informatique se distinguent surtout par l’environnement dans lequel le logiciel fonctionne et par le service qu’il rend. Développement Web, application mobile, logiciel de bureau ou programme embarqué ne demandent pas les mêmes interfaces, contraintes matérielles et modalités de déploiement.
Ce classement n’est pas une liste de métiers hermétiques. Une application de livraison peut réunir un site Web, une application mobile, un serveur et des échanges de données. Le choix commence donc par les utilisateurs et leurs tâches, avant le langage de programmation.
Le Web : une interface dans le navigateur et des services derrière
Le développement Web peut comprendre une partie visible dans le navigateur, souvent appelée front-end, et une partie exécutée sur le serveur, le back-end. MDN explique que le code côté serveur peut notamment traiter les demandes, accéder aux données et produire les réponses envoyées au client. (1)
Pour un espace client, le navigateur affiche les formulaires et les résultats ; le serveur vérifie les droits et applique les règles métier. Tout placer dans l’interface visible n’est pas une manière sûre de protéger un accès : une règle importante doit être contrôlée au bon endroit, pas seulement masquée par un bouton.
Un simple site de présentation n’a pas les mêmes besoins qu’un outil de réservation. Pour publier des pages sans développement spécifique, notre guide pour créer un site sans coder permet de comparer d’autres parcours. Une solution existante peut suffire si elle répond réellement au besoin.
Le mobile : concevoir pour un téléphone, pas réduire un site
Une application mobile doit composer avec les tailles d’écran, les autorisations, le stockage local, les interruptions et les conditions de réseau. Le guide d’architecture Android distingue notamment les responsabilités de l’interface et celles des données afin de faciliter l’évolution de l’application. (2)
Le développement natif utilise l’environnement de la plateforme ciblée. Une approche multiplateforme peut partager une partie du travail entre plusieurs systèmes. Le partage de code ne supprime toutefois ni les essais sur les appareils ciblés, ni les différences de permissions ou de distribution.
Posez une question concrète : l’utilisateur doit-il prendre des photos, scanner un code, travailler sans réseau ou recevoir des notifications ? Chaque besoin doit être vérifié sur la plateforme choisie. Une application mobile n’est pas automatiquement préférable à un site adapté au téléphone.
Logiciel de bureau : travailler dans l’environnement de l’ordinateur
Un logiciel de bureau s’installe ou s’exécute sur un poste de travail. Il peut exploiter des fichiers locaux, des périphériques et des ressources de calcul, avec des règles de mise à jour et de compatibilité propres aux systèmes visés. L’accès à Internet peut être nécessaire ou non selon sa conception.
Un outil de montage, un utilitaire métier et une application de dessin peuvent appartenir à cette famille tout en utilisant des architectures différentes. Pour le choisir, examinez l’installation, les données conservées sur le poste et la procédure de récupération après changement d’ordinateur.
Données, automatisation et intégration : relier plutôt qu’afficher
Certains développements servent surtout à importer, nettoyer ou échanger des données. Un programme peut rapprocher deux listes, produire un rapport ou transmettre une commande entre logiciels sans posséder une grande interface graphique. Les API sont l’un des moyens de communiquer entre systèmes ; elles ne constituent pas, à elles seules, une application complète.
Pour ce type de projet, décrivez les formats d’entrée, les règles de transformation, les erreurs à signaler et le résultat à vérifier. « Automatiser le fichier Excel » est trop vague : faut-il supprimer une saisie répétée, détecter des incohérences ou synchroniser une base ? Le livrable et les contrôles changent selon la réponse.
L’embarqué : un logiciel lié à un objet ou à une machine
Dans le développement embarqué, le programme fonctionne au sein d’un appareil et interagit avec son matériel. Le projet Zephyr présente par exemple un système d’exploitation temps réel pour des équipements embarqués, avec un noyau, des pilotes et des outils associés. (3) Tous les appareils embarqués n’utilisent pas Zephyr ni un système d’exploitation identique.
La mémoire, l’énergie, les capteurs et le comportement en cas de panne deviennent des questions centrales. Un prototype qui affiche une mesure sur une table de travail n’est pas encore un produit prêt à être déployé partout. Les essais matériels et les mises à jour doivent faire partie du projet.
Choisir un domaine à partir du livrable
- Un service accessible par un lien : commencez par examiner une application Web.
- Un usage mobile fortement lié au téléphone : comparez application et Web mobile sur les fonctions nécessaires.
- Un traitement local ou un périphérique précis : étudiez les possibilités d’un logiciel de bureau.
- Des échanges répétitifs entre outils : regardez l’intégration et l’automatisation avant de recréer une interface.
- Le pilotage d’un appareil : faites préciser les contraintes embarquées et les essais matériels.
Une fois le périmètre décrit, demandez des références portant sur des tâches comparables. Notre guide sur le choix d’un développeur à distance aborde la sélection et les précautions. Le domaine du logiciel et l’organisation du projet sont deux choix distincts : un développement Web peut être mené avec plusieurs méthodes de travail.
Sources
(1) MDN, introduction au côté serveur :
https://developer.mozilla.org/fr/docs/Learn_web_development/Extensions/Server-side/First_steps/Introduction
(2) Android Developers, architecture d’une application :
https://developer.android.com/topic/architecture
(3) Zephyr Project, composants et environnement embarqué :
https://www.zephyrproject.org/getting-the-best-of-all-worlds-with-zephyr-rtos/



