Bonjour ! C’est Kevin de NetDevices.
Je vous ai auparavant présenté le concept des notifications pushs dans les applications mobiles. Je vous propose pour aujourd’hui de nous intéresser à la gestion de bases de données.
Qu’est-ce qu’une base de données ?
La base de données est un système permettant de collecter, stocker et gérer des données se rapportant à l’état d’une application, aux “activités” produites par ses utilisateurs. Le type d’informations collectées va varier en fonction des applications.
Comment cela fonctionne?
Les développeurs vont mettre en place un SGDB (Système de Gestion de Base de Données).
Il en existe plusieurs types :
→ SQL : MySQL, PostgreSQL …
→ NoSQL (Not Only SQL) : MongoDB …
Le système de gestion, basé sur le langage SQL* va servir à structurer, gérer et filtrer les informations récoltées.
*Le langage SQL a pour objectif de créer un lien entre l’application et la base de données.
Qu’en est-il des Frameworks?
Il est possible d’utiliser des Frameworks. Ils vont aider le développeur à structurer l’application.
Chez NetDevices nous utilisons particulièrement Sails JS. Sails JS est un frameworks de type MVC (Modèle Vue Contrôleur). Dans ce type de frameworks, les “modèles” vont récupérer les données depuis la base de données puis les interpréter côté application. Les “contrôleurs” vont faire le lien entre ces modèles et l’Interface Utilisateur. Les “vues” vont structurer l’Interface Utilisateur.
Remarque: les “Vues” ne sont pas indispensables. On le voit par exemple dans le cas de l’utilisation d’une API. Une API est un outil qui va permettre au serveur de communiquer avec la base de données. L’API fait partie du serveur. Dans notre cas, elle permet aux applications *clientes* un accès à la base de données, même si les données sont modifiées par le serveur. Mais globalement, c’est l’ensemble des actions que peut faire un client sur le serveur.
* A savoir: les routes API sont des points d’entrée permettant aux clients d’accéder au serveur.
Il existe bien sûr une multitude de Frameworks pour la gestion de base de données, dans différents langages.
On va avoir par exemple Koa.js, en langage Javascript; Symphony, Zend ou Cakephp en langage php, Rails en langage Ruby (RoR : Ruby on Rails), Django en langage Python..
La gestion de base de données dans les projets NetDevices
Nous développons régulièrement des applications plus ou moins complexes pour nos clients, nécessitant l’existence d’une à plusieurs bases de données. C’est d’ailleurs le cas pour l’un de nos clients dans le secteur des ambulances. Ce projet d’application nécessite l’utilisation de 4 base de données. Il y aura ainsi des tables (structures qui vont représenter les données) pour les ambulances, pour les régulateurs, etc.
Pour un autre de nos clients spécialisé dans la gestion de chantier basé quant à lui sur une base de données il y aura des tables pour structurer les données se rapportant aux chantiers, aux entreprises, feuilles de tâches, etc.