Structure interne

Ce document est destine aux developpeurs. Il regroupe des conventions de structure interne qui ne sont pas necessaires pour un lecteur utilisateur.

pyvertexvectors

Factories: convention d’implementation

Dans la famille de modules pyvertexvectors, les routines de factory (_make_vector, _make_zone, _make_zones, _make_properties, etc.) sont volontairement des methodes d’instance.

Raison principale:

  • conserver le polymorphisme modele/GUI sans couplage fort

  • permettre l’utilisation du contexte de l’objet courant (parent, options, hooks)

  • faciliter les remplacements/mocks en tests unitaires

Regle de maintenance:

  • utiliser systematiquement self._make_* dans le code interne lorsqu’un objet sibling est cree

  • ne pas convertir ces factories en @classmethod sauf besoin explicite, stateless, documente et valide par revue

Notes de portage

La convention ci-dessus est appliquee dans les classes GUI Zones, zone et Triangulation. L’objectif est d’eviter les regressions lors des refactors (modele/GUI) et de conserver un point d’extension unique pour les creations d’objets.