Nouveau build de la version 5 (preview 7) :
https://dotnet.microsoft.com/download/dotnet/5.0
Comme je commence à retrouver un peu de dispo pour des projets ‘secondaires’, je me suis tranquillement remis sur le projet ‘Chronos’. Je ne sais plus si je vous en avais déjà parlé, mais l’idée, c’est une solution complète de pointage horaire évoluée (avec options de saisie de poste de travail, du rattachement à des ordres de fabrications ou des commandes, de la synchro de données ect …).
Je m’étais dit que ce genre de projet qui requiert un large panel de type d’applicatif était un bon exercice pour voir ce que l’on pouvait tirer de ce .Net Core. Il y a en effet :
- bien évidement un serveur data (j'ai opté pour SQL Server)
- des librairies communes
- un serveur d’application web (MVC Razor) (supervision, configuration, reporting, messaging …)
- un serveur d’API Rest (MVC) pour les dispositifs de pointage (smartphone, pc, pointeuse ..)
- plusieurs petits modules et services de synchro de données (erp, gpao, paie …)
- une application GUI (Blazor) en dispositif de pointage tactile avec option RFID (autodetecté)
- et d'autre idées sous le coude qui verront le jour suivant la trajectoire du projet
Et J’ai pu faire tout ça exclusivement avec ce qui est fourni out-of-box avec .Net Core 3 et sans utiliser aucune librairie tierce (à l’exception des javascripteries classiques pour les pages du serveur d’application). Tous les applicatifs (serveurs, services, moudules, gui) tournent sans aucune différence sur tous les systèmes testés (Windows 10 et Server 2016,2019, Linux (Debian 10, Ubuntu 20) et exactement de la même façon sur le PI (PI 3 Rasbian Stretch) et tout ça sans installer aucune dépendance spécifique sur aucun des systèmes. Je n'ais pas de Mac pour tester, mais cela devrait tourner tout pareil sur une pomme. Alors évidement quand on bricole un petit programme de temps en temps pour s’amuser, on ne peut pas comprendre ce que cela représente, mais je peux vous dire par expérience que cela fait très très longtemps que beaucoup de développeurs rêve de ça.
La suite du projet Chronos, c’est la mise en production expérimentale. Il sera testé à partir de septembre dans une petite entreprise de 20 personnes. Pour ce test, j’ai fait le pari de n’utiliser QUE des Raspberry PI. Dans un premier temps, je vais utiliser 6 PI.
1 pour le serveur SQL Server
1 pour les serveurs web, api et services
4 pour construire 4 pointeuses à identification RFID
Une petite photo de la ‘pointeuse’ prototype que je dois encore ‘mettre en boite’. C’est une application Blazor multi-formulaire qui tourne en kiosk dans Chromium et le lecteur RFID est un Mrfc522 connecté en spi. A noter que je n’ai pas écrit la moindre ligne de code en javascript dans cette appli et qu’elle utilise la même libraire de models que les autres applications du projet. Tout le dynamisme est codé en C# directement dans chaque page et ça, c’est carrément du bonheur

- pntrfid.jpg (21.89 Kio) Vu 10815 fois