Nos technos
Node.js

Node.js n’est pas un langage de programmation. Ce n’est pas non plus un framework JavaScript. Node.js est un environnement d’exécution JavaScript. Node.js se distingue par sa capacité à exécuter du Javascript côté serveur et à gérer des requêtes simultanés. Node.js permet donc de gérer le Back-End d’une application web ce qui permet d’avoir une stack Javascript. Node.js est complété dès 2011 par npm qui sert de client de ligne de commande et de gestionnaire de paquets.

A PROPOS DE NODE.JS A PROPOS DE NODE.JS

Un des problèmes d’usage à l’origine de la création de Node.js est lié à des enjeux de performances et à la difficulté de traiter des requêtes de manière simultanée. Il s’agit par exemple de pouvoir téléverser plusieurs images simultanément avec une barre de progression sans devoir systématiquement les téléverser une par une (via un formulaire HTML classique).

Lorsque Ryan Dahl se penche sur ce problème en 2009, l'écosystème Javascript est en pleine ébullition : la machine virtuelle JavaScript V8 de Google a été libérée en open source depuis quelques mois et les GAFA se livrent à une course à la performance. C’est dans ce contexte que Ryan Dahl choisit le Javascript pour résoudre son problème après avoir essayé d’autres langages (C, Python, Lua, Haskell…).

Javascript présente des avantages techniques spécifiques par rapport à sa problématique : fonctions anonymes, closures, event loop … Mais si on reprend notre exemple du téléversement d’images, Javascript ne permet pas à la base d’accéder aux fonctions système, comme la capacité d’accéder à des sockets pour le réseau ou au système de fichiers.

Node.js est donc un environnement d'exécution qui se distingue par sa capacité à exécuter du Javascript côté serveur et à gérer des requêtes simultanés. Node.js est aussi utilisé pour faire des applications multiplateforme avec des frameworks comme Ionic pour les applications mobiles ou encore Électron pour les applications de bureau.

AVANTAGES DE NODE.JS AVANTAGES

  • Apprentissage : Node.js permet d'avoir une stack technique centrée autour de Javascript, cela facilite la montée en compétence et la gestion de la dette technique.
  • Performance : Node.js permet d'avoir d'excellentes performances en particulier lorsqu'il s'agit de gérer différentes requêtes de manière simultanée et d'interagir fortement avec le côté serveur. Node.js est aussi optimisé pour le moteur V8 de Google.
  • Cross-platform : Node.js est compatible avec des frameworks cross-platform, comme Ionic pour des applications mobiles, mais aussi Electron pour des applications en client lourd.

L'ECOSYSTEME NODE.JS L'ECOSYSTEME NODE.JS

NOS PROJETS EN NODE.JS NOS PROJETS

MEDIC GLOBAL MEDIC GLOBAL

Medic Global met à disposition des professionnels de santé, des bâtiments adaptés et conçus pour recevoir des patients dans les meilleures conditions. Medic Global a sollicité TCM pour le développement d’une application de réservation et de gestion des rendez-vous médicaux incluant une logique de géolocalisation et de suivi médical de patients.

Le projet comprenait la prise en charge de données médicales conformément au RGPD et le développement d'une application web ainsi que d'une application mobile. Les applications s'adressait à une grande typologie d'utilisateurs associés à des droits différents : patients, praticiens, administrateurs, ...

MY LOBY MY LOBY

My Loby est une application de gestion de clés via des armoires connectées. L'application s'adresse essentiellement aux acteurs majeurs de l'immobilier comme les syndics, les agences ou les promoteurs. Il s'agit de permettre un stockage et un suivi sécurisé des clés en temps réel.

TCM a développé leur application métier sous forme d’une PWA. L’application exploite pleinement le potentiel d’une PWA avec le recours à la géolocalisation et aux notifications passant via le mobile.

SAVEURS & VIE SAVEURS & VIE

Saveurs & Vie est un acteur spécialisé dans la livraison à domicile de plats préparés pour les personnes âgées. Saveur & Vie est un acteur agréé pour le service à la personne.

TheCodingMachine a repris en maintenance l'ensemble de son site construit autour d'une approche e-commerce particulièrement spécifique. En effet, la gestion des menus et des commandes est hautement personnalisable autant du point de vue des produits, que de la périodicité ou des modes de livraisons. Il a donc fallu implémenter de nombreuses règles métiers et dynamiser la plupart des contenus et données du site.

Saveurs-et-vie-capture

MOET HENNESSY MOET HENNESSY

TheCodingMachine a développé pour Moët Hennessy : l'application MyIT, destinée à la présentation des outils IT disponibles dans le SI, ainsi qu'à la formation des employés sur ces outils. L'application web MyIT pouvait aussi fonctionner en client lourd grâce au framework Electron et l'application était aussi interfacée avec Sharepoint.

L'application permettait d'effectuer des recherches et de filtrer les différents outils disponibles au sein du SI de Moët Hennessy et d'accéder aux différentes formations ou tutoriels associés sur Sharepoint.