17.12.2012 Views

Programmation PYTHON - Zenk - Security - Repository

Programmation PYTHON - Zenk - Security - Repository

Programmation PYTHON - Zenk - Security - Repository

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Variables globales<br />

Conventions de codage<br />

CHAPITRE 7<br />

Les variables globales suivent les clauses d’importation et peuvent être réunies par<br />

thèmes séparés par un saut de ligne.<br />

Exemple<br />

TIMEOUT = 12<br />

SLEEP = 2<br />

DEFAULT_SERVER = 'localhost'<br />

DEFAULT_PORT = 25<br />

Fonctions et classes, le corps du module<br />

Le reste du module est bien sûr réservé aux différentes fonctions et classes qui le<br />

composent. L’ordre de ces éléments est en général guidé par la logique des<br />

interactions : une classe de base est toujours placée au dessus de ses classes héritées.<br />

De la même manière, une fonction qui doit être appelée pour toutes les classes d’une<br />

application se placera toujours juste après cette classe.<br />

Organisation logique des classes et fonctions<br />

class BaseDataStream:<br />

"""Classe de base pour les flux."""<br />

def read_stream(self):<br />

"""Lecture d'un flux."""<br />

raise NotImplementedError<br />

class RSSDataStream(BaseDataStream):<br />

"""Classe pour les flux RSS."""<br />

def read_stream(self):<br />

"""Lecture d'un flux RSS."""<br />

...<br />

registerClass(RSSDataStream)<br />

Structuration d’une classe<br />

Une dernière partie importante en terme de structuration concerne l’organisation d’une<br />

classe. Lorsqu’une classe implémente beaucoup de méthodes, c’est en général une bonne<br />

idée de faire des regroupements logiques séparés par des blocs de commentaires.<br />

211

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!