Aide En Informatique
Latest Posts:

Mysql,Sqlite,Api Rest : les differences en developpement Mobile
Mysql,Sqlite,Api Rest : les differences en developpement Mobile

Sqlite, Mysql, et les API REST pas de confusion et un peu de clarifications.

Je vois beaucoup de débutants dans les app mobiles (flutter, ionic, xmarin, android java ou kotlin etc..) faire une grosse confusion entre Sqlite, Mysql ou l'utilisation des API REST.

=>Mysql est un systeme de gestion de base de données (relationnelle) centralisé ce qu'on appelle SGBD en français et database management system en anglais, le qualificatif <<centralisé>> ici a son pesant d'or car la SGBD mysql est le point centrale ou on doit aller puiser les données que l'on doit utiliser dans notre application.En bref, Mysql comme les autres SGBD, nous aide à créer et manipuler la BDD qu'on utilise pour stocker les données de notre app.L'un des roles des langages de programmation dite de backend (PHP,JAVA,C#, javascript à travers nodejs etc..) est justement le fait de mettre à la disposition du developpeur des bibliothèques qui lui permettent de communiquer facilement avec tous les SGBD afin d'y lancer des query(requetes) SQL pour manipuler les données stockées dans la base de données.

=>Malheureusement à partir d'une app mobile, on ne peut faire directement une requete à une BDD de mysql, les applications mobiles n'ont pas de bibliothèques pour communiquer et faire des requetes sql directement à mysql car ouvrir une communication à une BDD est énormement gourmante en terme de mémoire et impossible de s'hasarder pour chercher à faire une telle opération dans une peripherie mobile qui n'est pas bien dotée en terme de capacité mémoire, raison pour laquelle on prefere passer par les applications backend à travers les API REST pour ouvrir une une communication à la BDD , recuperer les données et les transmettre au format JSON à la app mobile, le choix du format json aussi n'est pas anodin car ce format est leger et facilement manipulable par les app mobile, donc toutes les technologies pour developpement mobile disposent des bibliothèques qui contiennent des classes capable de faire une requete HTTP à un endpoind REST et échanger les données au format JSON.

=>Sqlite c'est tout une autre chose, certe avec sqlite on peut aussi faire des requetes sql comme avec mysql, mais la difference est que sqlite n'est pas centralisé comme Mysql, quand vous utilisez sqlite pour stocker vos données dans une app mobile, vous n'avez meme pas besoin des API rest car la BDD sqlite sera inclu dans l'apk android finale qui sera installé dans le télephone de l'utilisateur en quelque sorte on a la une gestion decentralisée car chaque utilisateur à sa copie de sqlite en locale dans son telephone, donc toutes les operations que vous allez faire dans la app avec sqlite seront uniquement pour l'utilisateur du telephone et non pour tout le monde, raison pour laquelle sqlite est utilisé le plus souvent pour la gestion offline, par exemple quand l'utilisateur n'a pas de connession internet et on veut le faire continuer à utiliser notre app offline dans ce cas on peut temporarirement stocker les données dans sql mais à peine l'utilisateur retrouve la connession, on doit trouver un mecanisme pour syncroniser les données avec une BDD centrale comme Mysql. En plus ne mettez jamais les données sensibles dans une app mobile, ni moins dans sqlite car il suffit de quelques seconde pour faire la <<reverse engineering>> d'une app android et recuper tout ce qu'il y a dedans.UN exemple simple, tout le monde a whastapp, quand vous installez whatsapp dans votre smartphone, une copie de sqlite est aussi deployé avec la app whatsapp et toutt ce que vous faite avec whatsapp est d'abord sauveguardé dans la base de donnée loacle sqlite et c'est ensuite que whatsapp le transmet par internet à ses serveurs centraux qui le sauvent dans la base de donnèes centrale de whastapp afin de l'acheminer successivement au destinataire.

Abbonnez vous à ce blog pour lire et recevoir des ecxcellents contenus sur le coding, il suffit de soir vous enregistrer, soit vous inscrire à la neswletter visible dans la page du blog.

Bon coding


Author: admin
23.11.2022, 10:31
Category: Other
Comments: 2
Views: 209
-

Share

Comments (2)
admin
admin Administrator

@Noé Muzungu ça me fait plaisir que ce post vous a edifié, posez vos questions, vos preocupations, vos incomprehensions en matière de coding et je ferai l'objet des posts comme celui ci pour mieux vous edifiez, car le coding c'est d'abord la passion et meme la repetition et parfois la theorie vaut la peine pour mieux la pratiquer Happy coding

10.12.2022, 16:34

Noé Muzungu
Noé Muzungu Guest

Merci beaucoup pour ce bon post j'ai levé plusieurs équivoques

27.11.2022, 11:09


Leave A Comment
processing...