Outils pour utilisateurs

Outils du site


boardz:design:technologychoices

Ceci est une ancienne révision du document !


Options Technologiques

BoardZ : Version 2

Le choix de Java (J2SE)

Les fonctions de calcul de données statistiques à partir d'enregistrements de bases de données peuvent aujourd'hui être réalisés selon une grande quantité d'architectures techniques tant les langages et les briques logicielles ont évoluées et maturées.

On doit distinguer cependant encore 3 grandes familles d'implémentation :

  • Les implémentations scriptées (non compilées) incluant Php, Python, Ruby, NodeJS (Javascript server), Perl, etc.
  • Les implémentations compilées comme Java ou C#.
  • Les implémentations compilées haute performance, comme le C ou le C++.

Le choix majeur d'une technologie de réalisation d'un projet dépend finalement d'une équation assez simple : Il repose essentiellement sur le rapport entre l'interface et l'interaction utilisateur d'une part, et le masse de calcul ou d'automatisation d'autre part. Les langages scriptés sont très habiles à produire de l'interface et des interactions utilisateur à moindre coût, flexible, agile, permettant des modifications à mise en oeuvre quasi immédiate, ou du moins simple, mais sont d'une performance calculatoire et algorithmique assez faible. En revanche les langages compilés et le mode de conception en serveur persistant rend assez coûteux le travail de l'interface, mais au contraire favorise la vitesse et la quantité de calcul.

Le fonctionnement de BoardZ suppose 3 principales tâches dans son fonctionnement continu :

  • Recevoir les données
  • Compiler les données sources et les transformer (dimensionnalisation, agrégation, distribution)
  • Restituer les données aux demandeurs

Nous négligeons ici les tâches exceptionnelles de gestion du serveur et de maintenance de données.

Revenir au sommaire de la conception - Revenir au sommaire général

boardz/design/technologychoices.1548077079.txt.gz · Dernière modification: 2020/04/07 11:07 (modification externe)