Comment concevoir une API utilisée par Web, Mobile et IoT ?
C’est ici que le silo « Développement d’Applications et Solutions Connectées » prend tout son sens. Prenons un système de suivi environnemental.
Couche physique
ESP32 + capteurs.
Communication
MQTT, HTTP ou autre mécanisme adapté au projet.
Back-End
Réception et traitement.
Base de données
Stockage des mesures.
API
Exposition des informations nécessaires.
Dashboard React
Visualisation sur le Web.
Flutter
Consultation mobile.
Architecture
CAPTEUR
↓
ESP32
↓
MQTT / HTTP
↓
BACK-END NODE.JS
↓
BASE DE DONNÉES
↓
API
↙︎ ↘︎
REACT FLUTTER
Première leçon
Une « application » n’est plus nécessairement un logiciel isolé.
Elle peut être un système composé de plusieurs clients et services.
Deuxième leçon
Le contrat API devient central.
Web et mobile doivent comprendre les données de manière cohérente.
Troisième leçon
Les responsabilités doivent être séparées.
L’ESP32 collecte.
Le Back-End traite.
La base conserve.
L’API expose.
React et Flutter présentent.
Quatrième leçon
La sécurité traverse toute l’architecture.
Il faut réfléchir aux :
- identités ;
- accès ;
- échanges ;
- données ;
- API ;
- déploiement.
Mini-projet deluxe
Objectif
Suivre température et humidité.
Étape 1
ESP32 collecte les mesures.
Étape 2
Les données sont transmises.
Étape 3
Node.js les traite.
Étape 4
Elles sont stockées.
Étape 5
Une API permet leur consultation.
Étape 6
React construit le dashboard.
Étape 7
Flutter propose une vue mobile.
Étape 8
Tests, sécurité, Git, Docker, CI/CD et Cloud complètent progressivement le projet.
Ce que ce projet enseigne réellement
Pas seulement React.
Pas seulement Node.js.
Pas seulement IoT.
Il enseigne la conception d’une solution numérique de bout en bout.
Guides complémentaires
- Formation Développement d’Applications et Solutions Connectées au CAFP Casablanca →
- Qu’est-ce qu’une API ? →
- Qu’est-ce qu’une API REST ? →
- Comment concevoir une API REST avant de coder ? →
- REST vs GraphQL : lequel choisir ? →
- Qu’est-ce que GraphQL ? →
- Comment tester une API avec Postman ? →
- Comment sécuriser une API ? →
FAQ — Développement d’Applications et Solutions Connectées
Une même API peut-elle servir le Web et le mobile ?
Une architecture peut être conçue pour exposer des services consommés par plusieurs clients, sous réserve que les contrats, droits et besoins soient correctement définis.
L’objet connecté doit-il accéder directement à la base ?
L’architecture doit être conçue selon les responsabilités et contraintes du projet. Le parcours CAFP travaille justement les échanges entre objets, applications, Back-End et données.
REST ou GraphQL ?
Le choix dépend des besoins du projet. Le Bachelor aborde les deux.
Pourquoi apprendre MQTT ?
Il fait partie des protocoles abordés pour la communication avec les solutions connectées.
Quel article lire ensuite ?
La suite naturelle est le cluster bases de données, puis Flutter, DevOps/Cloud et IoT.
Consultez la page principale de cette filière pour retrouver la durée, les conditions d’admission et les informations de préinscription.
