Bonjour,
Je me permet de poser une question à laquelle je n'ai pas trouvé de réponse sur le forum.
Lors de la création d'un bot on peut avoir une librairie dédiée au fonctions tirées du client (pathfinding, encodage, ect), ce genres de fonctions prennent des valeurs en entrées et retournent une valeur qui sont pour la plus part du temps vérifiable aux travers de tests unitaires.
Cependant je ne parviens pas à trouver une structure qui me convienne pour gérer d'une part la connexion socket, et d'autre part le parseur de packet. Je pourrais utiliser une BDD pour faire le lien entre tout les modules de l'app, ce qui rendrait aussi plus simple les tests, mais j'ai peur que les performances soient affectés. A l'heure actuelle j'utilise des varriables globales, qui ont l'avantage d'être rapide en lecture/ecriture, mais au moment des tests unitaire ca deviens vite impossible de tester certaines parties du programme.
Au final si j'ai une fonction move(cell), elle devrait retourner quoi ? Le paquet a envoyer au serveur ? Une valeur booleenne ? Il y a plein de façons de faire mais je n'ai pas trouvé la bonne pour rendre le projet le plus clean possible
Je me permet de poser une question à laquelle je n'ai pas trouvé de réponse sur le forum.
Lors de la création d'un bot on peut avoir une librairie dédiée au fonctions tirées du client (pathfinding, encodage, ect), ce genres de fonctions prennent des valeurs en entrées et retournent une valeur qui sont pour la plus part du temps vérifiable aux travers de tests unitaires.
Cependant je ne parviens pas à trouver une structure qui me convienne pour gérer d'une part la connexion socket, et d'autre part le parseur de packet. Je pourrais utiliser une BDD pour faire le lien entre tout les modules de l'app, ce qui rendrait aussi plus simple les tests, mais j'ai peur que les performances soient affectés. A l'heure actuelle j'utilise des varriables globales, qui ont l'avantage d'être rapide en lecture/ecriture, mais au moment des tests unitaire ca deviens vite impossible de tester certaines parties du programme.
Au final si j'ai une fonction move(cell), elle devrait retourner quoi ? Le paquet a envoyer au serveur ? Une valeur booleenne ? Il y a plein de façons de faire mais je n'ai pas trouvé la bonne pour rendre le projet le plus clean possible