Bonnes pratiques pour les outils Vlm : Différence entre versions

De VlmWiki
 
(13 révisions intermédiaires par 3 utilisateurs non affichées)
Ligne 1 : Ligne 1 :
Cette page est un draft qui demande à être complété.
 
 
 
= Contraintes fonctionnelles - Règles 1.x =
 
= Contraintes fonctionnelles - Règles 1.x =
  
* Concernant la gestion du multi-boat, Les outils peuvent manipuler plusieurs bateaux.
+
* Concernant la gestion du multi-comptes et du boat-sitting :
** Il est demandé aux développeurs de limiter le nombre de bateaux gérés à 5. '''Règle 1.1'''
+
** Les outils installés localement ne doivent manipuler par défaut qu'un seul joueur '''Règle 1.1'''
** Il est également demandé aux développeurs de demander au joueur si c'est "son" boat qu'il paramètre ou celui "d'un autre", sans qu'il y ait actuellement d'impact vis à vis de {{V}}. Cela peut simplement permettre d'alerter le joueur quand il a deux bateaux à lui sur la même course. Et ça servira ultérieurement quand {{V}} intègrera la notion de boat-sitting.
+
** L'utilisation pour plusieurs comptes (plusieurs joueurs) ne doit pas être aisément accessible et doit faire l'objet d'une information expresse et d'une demande de confirmation ("Etes vous sur ? Connaissez vous la fonction de boat-sitting, etc...") '''Règle 1.2'''
 +
** Dans la mesure du possible, le rendu visuel doit permettre au joueur de se rendre compte que ce n'est pas son bateau en propre qu'il manipule.
  
 
= Utilisation des ressources Vlm - Règles 2.x =
 
= Utilisation des ressources Vlm - Règles 2.x =
Ligne 13 : Ligne 12 :
 
** en l'absence d'action de l'utilisateur pendant 20min, arrêter la récupération automatique
 
** en l'absence d'action de l'utilisateur pendant 20min, arrêter la récupération automatique
 
** mettre en cache les drapeaux (au sens image) '''Règle 2.2.'''
 
** mettre en cache les drapeaux (au sens image) '''Règle 2.2.'''
** mettre en cache les raceinfo, mais pouvoir les rafraîchir manuellement. Cela veut dire : ne pas les rafraichir automatiquement quand les données sont présentes dans le cache.
+
** mettre en cache les raceinfo, mais pouvoir les rafraîchir manuellement. Cela veut dire : ne pas les rafraîchir automatiquement quand les données sont présentes dans le cache.
 
* Ne pas gérer plus de traces que ne l'autorise Vlm. '''Règle 2.3.'''
 
* Ne pas gérer plus de traces que ne l'autorise Vlm. '''Règle 2.3.'''
 
* Utiliser les calques séparés si vous récupérez les maps de {{V}}. '''Règle 2.4.'''
 
* Utiliser les calques séparés si vous récupérez les maps de {{V}}. '''Règle 2.4.'''
Ligne 21 : Ligne 20 :
 
* Essayez de vous tenir au courant des évolutions des interfaces (web-services) mis à dispo, afin que VLM ne soit pas obligé de maintenir des vieilles méthodes pour votre programme.
 
* Essayez de vous tenir au courant des évolutions des interfaces (web-services) mis à dispo, afin que VLM ne soit pas obligé de maintenir des vieilles méthodes pour votre programme.
 
** En particulier, merci d'utiliser les urls (quand elles existent) qui sont dans /ws/ en '''json''', qui est le format pérenne de Vlm. '''Règle 3.1'''
 
** En particulier, merci d'utiliser les urls (quand elles existent) qui sont dans /ws/ en '''json''', qui est le format pérenne de Vlm. '''Règle 3.1'''
** Cela veut dire notamment utiliser ''/ws/boatinfo.php'' à la place de ''/getinfo.php''
 
 
** N'hésitez pas à solliciter les développeurs de {{V}} pour une idée qui faciliterait votre maintenance applicative.
 
** N'hésitez pas à solliciter les développeurs de {{V}} pour une idée qui faciliterait votre maintenance applicative.
 +
** Voir aussi la règle 4.
  
= Communiquer - Faites vous connaitre ! - Règle 4.x =
+
* Mettre un User-Agent correct dans vos requêtes
 +
** Le User-Agent permet à Vlm d'identifier plus facilement les outils (officiels ou non) qui manipulent les pages de Vlm.
 +
*** L'user-agent de votre outil doit renvoyer :
 +
**** ou bien le user agent du navigateur client quand c'est un outil Web
 +
**** ou bien le nom de l'outil, sa version et si possible le système d'exploitation (Ex : QtVlm/1.2.3 (Windows) )
 +
 
 +
= Communiquer - Faites-vous connaître ! - Règle 4.x =
 
** La meilleure façon d'épargner à tous de l'énergie est de référencer votre programme dans ce wiki. '''Règle 4.1.'''
 
** La meilleure façon d'épargner à tous de l'énergie est de référencer votre programme dans ce wiki. '''Règle 4.1.'''
 
** Publiez votre code (par exemple en demandant un accès à [http://dev.virtual-loup-de-mer.org/vlmtools/ VlmTools]). '''Règle 4.2.'''
 
** Publiez votre code (par exemple en demandant un accès à [http://dev.virtual-loup-de-mer.org/vlmtools/ VlmTools]). '''Règle 4.2.'''
 
*** C'est conforme à l'esprit de {{V}}, et ça peut permettre de détecter plus rapidement si un dysfonctionnement provient de votre programme ou de {{V}} lui-même.
 
*** C'est conforme à l'esprit de {{V}}, et ça peut permettre de détecter plus rapidement si un dysfonctionnement provient de votre programme ou de {{V}} lui-même.
 +
** Inscrivez vous à la [https://groups.google.com/forum/#!forum/vlm-trac liste des developpers]. Faites un mail au comité en cas de difficulté. Si vous êtes un utilisateur très avancé d'un outil (un béta testeur régulier par exemple), votre présence est aussi la bienvenue.
 +
 +
[[Catégorie:Développement]]

Version actuelle datée du 18 mars 2012 à 10:48

Contraintes fonctionnelles - Règles 1.x

  • Concernant la gestion du multi-comptes et du boat-sitting :
    • Les outils installés localement ne doivent manipuler par défaut qu'un seul joueur Règle 1.1
    • L'utilisation pour plusieurs comptes (plusieurs joueurs) ne doit pas être aisément accessible et doit faire l'objet d'une information expresse et d'une demande de confirmation ("Etes vous sur ? Connaissez vous la fonction de boat-sitting, etc...") Règle 1.2
    • Dans la mesure du possible, le rendu visuel doit permettre au joueur de se rendre compte que ce n'est pas son bateau en propre qu'il manipule.

Utilisation des ressources Vlm - Règles 2.x

  • De manière générale, il faut être respectueux de la bande passante et de la charge des serveurs. En particulier :
    • pas plus d'une requête automatique pour récupérer les boatinfo par vac. Ou pas de requête automatique du tout ;) Règle 2.1.
    • en l'absence d'action de l'utilisateur pendant 20min, arrêter la récupération automatique
    • mettre en cache les drapeaux (au sens image) Règle 2.2.
    • mettre en cache les raceinfo, mais pouvoir les rafraîchir manuellement. Cela veut dire : ne pas les rafraîchir automatiquement quand les données sont présentes dans le cache.
  • Ne pas gérer plus de traces que ne l'autorise Vlm. Règle 2.3.
  • Utiliser les calques séparés si vous récupérez les maps de Virtual Loup de Mer. Règle 2.4.

La Normalisation - Faciliter la vie des développeurs de Virtual Loup de Mer - Règle 3.x

  • Essayez de vous tenir au courant des évolutions des interfaces (web-services) mis à dispo, afin que VLM ne soit pas obligé de maintenir des vieilles méthodes pour votre programme.
    • En particulier, merci d'utiliser les urls (quand elles existent) qui sont dans /ws/ en json, qui est le format pérenne de Vlm. Règle 3.1
    • N'hésitez pas à solliciter les développeurs de Virtual Loup de Mer pour une idée qui faciliterait votre maintenance applicative.
    • Voir aussi la règle 4.
  • Mettre un User-Agent correct dans vos requêtes
    • Le User-Agent permet à Vlm d'identifier plus facilement les outils (officiels ou non) qui manipulent les pages de Vlm.
      • L'user-agent de votre outil doit renvoyer :
        • ou bien le user agent du navigateur client quand c'est un outil Web
        • ou bien le nom de l'outil, sa version et si possible le système d'exploitation (Ex : QtVlm/1.2.3 (Windows) )

Communiquer - Faites-vous connaître ! - Règle 4.x

    • La meilleure façon d'épargner à tous de l'énergie est de référencer votre programme dans ce wiki. Règle 4.1.
    • Publiez votre code (par exemple en demandant un accès à VlmTools). Règle 4.2.
      • C'est conforme à l'esprit de Virtual Loup de Mer, et ça peut permettre de détecter plus rapidement si un dysfonctionnement provient de votre programme ou de Virtual Loup de Mer lui-même.
    • Inscrivez vous à la liste des developpers. Faites un mail au comité en cas de difficulté. Si vous êtes un utilisateur très avancé d'un outil (un béta testeur régulier par exemple), votre présence est aussi la bienvenue.