Vous avez appris HTML, CSS et JavaScript (ou React Native/Flutter). Vous avez créé le frontend de votre application et elle est magnifique. Vous devez maintenant enregistrer les données utilisateur. Et vous découvrez qu'il faut apprendre : Linux, Docker, SQL, Node.js, Express, JWT, Nginx, SSL...
Décourageant, non ? C'est là que le Backend as a Service (BaaS) vous sauve. Des plates-formes comme Firebase, Supabase et Appwrite vous offrent tout cela prêt à l'emploi. Vous vous concentrez sur l'application, ils se concentrent sur le serveur.
Mais attention : « facile » ne veut pas dire « de toute façon ». Si vous l’utilisez mal, votre application sera lente, peu sécurisée et coûteuse. Voici les meilleures pratiques pour démarrer du bon pied.
1. Sécurité côté client
Dans le modèle traditionnel, le serveur cache la base de données. Dans BaaS, votre application parle directement à la banque. Si vous ne configurez pas les règles, n'importe qui peut tout supprimer.
- Règle d'or : ne faites jamais confiance au frontend.
- La pratique : configurez les « règles de sécurité » (Firebase) ou la « sécurité au niveau des lignes » (Supabase).
- Faux :
allow read, write: if true;(Porte ouverte). - Droite :
allow write: if request.auth.uid == resource.data.ownerId;(Seul le propriétaire modifie).
- Faux :
2. Ne recherchez pas trop de données (requête)
Les bases de données NoSQL (comme Firestore) facturent par lecture. Si vous téléchargez 1 000 documents à chaque fois que l’utilisateur ouvre l’application, vous dépasserez le quota gratuit en une journée.
- Utiliser la pagination : téléchargez 10 éléments. Lorsque l'utilisateur fait défiler, téléchargez-en 10 autres.
- Filtrer sur le serveur : ne téléchargez pas tout et filtrez avec
array.filter()en JavaScript. Utilisez le filtre bancaire (.where('status', '==', 'active')).
3. Structure des données (modélisation des données)
En SQL, vous évitez la duplication des données (normalisation). En NoSQL (Firestore), vous devez dupliquer les données (Dénormalisation).
- Si vous avez une publication et souhaitez afficher le nom de l'auteur, enregistrez le nom de l'auteur à l'intérieur du document de publication.
- Pourquoi ? : Pour éviter d'avoir à lire deux documents (Post + Utilisateur) pour créer un écran. La lecture, c'est de l'argent.
4. Index
Si votre application commence à ralentir lors de la recherche, vous avez probablement oublié de créer des index.
- Un index est comme l'index d'un livre. Il indique à la banque où se trouvent les informations sans avoir à lire l'intégralité de la banque.
- La console Firebase/Supabase vous avertit généralement lorsqu'un index est manquant. Cliquez sur le lien qu'ils suggèrent.
Conclusion
BaaS est un super pouvoir pour les débutants. Vous pouvez créer vous-même un « Uber » ou un « Instagram » en quelques semaines. Mais rappelez-vous : la facilité a un prix. Étudiez les règles de sécurité et la modélisation des données de la plateforme que vous avez choisie. Cela vous fera économiser beaucoup d’argent et vous évitera des maux de tête à l’avenir.
A lire aussi
-Backend As A Service - Bonnes pratiques pour les entreprises
- Backend en tant que service -Backend pour les applications : bonnes pratiques pour les petites équipes qui ne peuvent pas se tromper
- Architecture logicielle évolutive - Meilleures pratiques de mise à l'échelle -Architecture logicielle évolutive - Meilleures pratiques pour les startups
- Architecture logicielle évolutive - Meilleures pratiques pour les petites équipes
