Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Concevoir l'architecture pour la prochaine version du Web Service. #12

Open
yoannfleurydev opened this issue Mar 17, 2017 · 6 comments
Open
Assignees
Milestone

Comments

@yoannfleurydev
Copy link
Member

Sur quel outil allons nous partir ? On reste sur du Java ?
Selon moi, c'est une valeur sûre. Idem pour le framework au final, Spring Boot a plutôt bien fonctionné pour la V1.

Maintenant, il faut que l'on arrive à concevoir une architecture robuste, avant de coder. Car on y est allé un peu à taton lors de la V1, et on a perdu beaucoup de temps.

Je propose déjà la mise en place d'un RAML avant de tout commencer pour que l'on soit tous d'accord sur les contrats de communication.

@yoannfleurydev yoannfleurydev added this to the v2.0 milestone Mar 17, 2017
@yoannfleurydev
Copy link
Member Author

Pour la spécification, l'ancienne est disponible ici, il suffit de l'améliorer, pas besoin de recréer un nouveau dépôt.

@AnthoGdn
Copy link
Member

AnthoGdn commented Apr 7, 2017

Yop. Je viens seulement de voir le message désolé !
D'accord pour garder Spring Boot. Pour le RAML je suis d'accord si quelqu'un veut développer le front pendant le developpement du back. Perso je n'ai pas envie de le faire pour le moment. Je voulais d'ailleurs tester un outil qui permet de générer un swagger à partir de spécifications écrites dans le contrôleur.

Sinon pour ma part, voici quelques ajouts que j'aimerai ajouter dans l'ordre :

  • ajouter un système de persistance pour afin d'avoir un service sans état;
  • ajouter ce dernier dans un docker;
  • dockeriser l'application;
  • chercher une architecture plus simple au niveau de la communication avec les ia;
  • changer les endpoints;
  • refaire une architecture des couches plus propres;
  • muter l'application en micro-service;
  • remodeler le modèle pour éventuellement pouvoir ajouter d'autre jeux facilement;
  • de nouvelles fonctionnalitées comme le fait de permettre à des humains de jouer, gérer l'authentification, stocker les scores, ajouter des ia dans le serveur...
  • développer une ia qui gère les parties d'ia :p

Vous en pensez quoi ? Des changements ? Ajouts ?

@yoannfleurydev
Copy link
Member Author

Je voulais d'ailleurs tester un outil qui permet de générer un Swagger à partir de spécifications écrites dans le contrôleur.

J'ai utilisé un outil dans le genre pour mon ancienne boite (sous Symfony), et c'était vraiment cool, donc je suis partant si tu as trouvé un truc du genre @AnthoGdn .

dockeriser l'application

Est-ce vraiment utile ?

refaire une architecture des couches plus propres

Oh que oui !

de nouvelles fonctionnalités comme le fait de permettre à des humains de jouer, gérer l'authentification, stocker les scores, ajouter des ia dans le serveur...

Carrément partant pour tous ces points. Par contre, grosse faille de sécurité sur le dernier. Il faudra faire en sorte que les IA ainsi exécutées soient dans un environnement autre que le serveur.

@yoannfleurydev
Copy link
Member Author

yoannfleurydev commented Apr 8, 2017

chercher une architecture plus simple au niveau de la communication avec les ia;

On a pas trop d'alternatives aux WebSocket pour le coup. 😕
Par contre, il faut voir si c'est possible d'avoir une WebSocket par partie. A réfléchir donc.

@AnthoGdn
Copy link
Member

AnthoGdn commented Apr 8, 2017

Yep, mais je n'ai pas testé : swagger-maven-plugin

dockeriser l'application
Est-ce vraiment utile ?

C'est pour m'amuser avec. C'est juste un fichier à ajouter. Et ça permet aux gens qui n'ont pas Maven de deployer l'application. :)

@yoannfleurydev
Copy link
Member Author

Yep, mais je n'ai pas testé : swagger-maven-plugin

Ah, ça à l'air pas mal avec un coup d'oeil rapide.

C'est pour m'amuser avec. C'est juste un fichier à ajouter. Et ça permet aux gens qui n'ont pas Maven de deployer l'application. :)

Ca me va 👍 , j'aime quand on s'amuse comme ça 😃

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants