Placeholder image

Projet Salle de marché - Application cliente légère en ReactJS

@Groupe LLWS

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

Présentation

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.

Pourquoi utiliser une API ?

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

Javascript
@mozilla

ReactJS
@facebook

NodeJS
@Ryan Dahl

Github
@github

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