Tout au long de la deuxième année, le programme des cours d'informatique s'est centré autour de la
Programmation Orientée Objet et de la création d'applications lourdes en C#.
Nous avons, mon groupe et moi, décidé d'articuler nos projets de fin d'année autour d'une solution de simulation de Salle de marché.
Afin de s'inscrire dans les standards de développement actuels, nous avons développé 3 applications :
- Une application Windows Form en C#
- Un site web en Javascript utilisant le framework ReactJS
- Une API en NodeJS
Ces 3 applications, ont été développées autour de la thématique d'une simulation de salle de marché (achat et revente de titres en bours)
afin de garder une ligne directice et une cohérence lors de la phase de développement de ces 3 projets.
- @nathansuk.
#groupe #llws
Application cliente
L'application cliente a été développée avec le langage de programmation orienté objet : C#. Il s'agit d'une application Windows Form
développée sous l'environnement Visual Studio. Cette application, devait à l'origine être une application capable de communiquer avec un SBGD
tranditionnel, récupérer des données, et performer des applications directement dans celui-ci.
Cependant, une application comme telle posait un problème : les informations et les requêtes executées auraient été stockées à l'intérieur de l'application cliente.
Elles auraient été exposées aisément pour tout attaquant ayant des connaissances dans la décompilation d'application en C#, celui-ci aurait-eu accès aux informations de connexion à la base de données.
Nous avons décidé d'adopter une architecture plus poussée, et de développer une API qui sera l'intermédiaire entre l'application cliente en c# ainsi que l'application web avec le SBGD.
Les applications côté client n'auront qu'à executer de manière asynchrone des requête en POST et GET, l'API se chargera alors d'exécuter des requêtes auprès de la base de données et de transmettre
les informations au format JSON (qui sera traîté côté client grâce aux bibliothèques respectives à chaque langage)
Les avantages :
- Une seule base de code qui communique avec notre SBGD : Si la base de données venait à changer, les changements à opérer ne seront qu'au niveau de l'API.
Sans cela, nous aurions été obligé de maintenir deux applications et d'assurer la cohérence des requêtes sur deux bases de codes distinctes
-
Nous avons énormément appris : nous nous sommes rapprochés au maximum des standards de développement actuel en utilisant une API. Nous avons donc appris à communiquer avec une API
de manière asynchrone en C#, récupérer et traîter une réponse en JSON
Environnement et technologies
.NET Framework
@microsoft
Les liens