Modules Python

De OpenESubWiki.

Sommaire

Introduction

Ce document contient des informations sur la partie d'OpenESub écrite en Python. Cette partie se compose :

  • du moteur du jeu asynchrone (Cachalot) qui effectue les compilations du jeu en ligne ;
  • d'un serveur temps réel (Aegir) qui permet d'organiser des parties rapides indépendamment des parties classiques ;
  • d'un client (Argo) qui permet de jouer aux parties temps réel ainsi qu'aux parties classiques.

Organisation des répertoires

Les modules Python sont regroupés en fonction du programme auquel ils appartiennent. Par exemple, les modules composant le client Argo sont regroupés dans le répertoire openESub/jeu/tempsReel/clients/argo/src/. La seule exception à cette règle concerne les modules Python utilisés par plusieurs programmes. Ceux-ci sont placés dans le répertoire openESub/jeu/commun/cachalot/src/.

Nommage des modules

Afin d'éviter les conflits de noms, tous les modules destinés à être importés ont un nom qui commence par le préfixe open (par exemple openZdop.py). Seuls les modules principaux peuvent avoir un autre nom (par exemple argo.py pour le client).

Espaces ou tabulations

Une simple règle de bon goût est de mise : pas de caractères tabulation, le décalage des lignes se fait uniquement à l'aide d'espaces (quatre comme classiquement en Python). Par ailleurs, les fins de lignes sont au format Unix c'est-à-dire un seul caractère (\n) marque la fin de la ligne contre deux sous Windows (\r\n).

Outils personnels