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 légère a été développée avec le langage de programmation: Javascript en utilisant le framework ReactJS.
Le choix de ReactJS a été fait afin de proposer une expérience utilisateur fluide et dynamique. Le choix s'est également porté sur ReactJS car il s'agit du framework Javascript le plus populaire,
de ce fait, si des problèmes techniques sont rencontrés pendant la phase de développement ils seront réglés plus rapidement.
De plus, les fonctionnalités que proposent ce framework permettent un gain de temps important.
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
-
Uniformisation du développement : le choix du langage Javascript comme langage dominant de l'application légère et l'utilisation de ReactJS a permis d'unifier le développement avec l'API car celle-ci est aussi développée en Javascript.
Grâce à cela, la communication des données entre l'API et le site web est plus cohérente et compréhensible.
Environnement et technologies
Les liens
Verion de démonstration
Une version de démonstration est mise à disposition. Celle-ci se connecte à l'API hébergée sur un serveur Linux (Ubuntu)
: https://ppe.nathansuk.fr