Bonjour

Voici mon problème :

Avec le temps, mes classes sont de plus en plus grosses, on trouve toujours de nouvelles méthodes à ajouter.
J'essaye toujours d'avoir des fichiers plutôt petits. L'une des principales raisons est qu'avec SVN, cela permet de mieux voir si une modification est locale (on a juste retoucher une méthode) ou globale (on a complètement revu toutes les méthodes). En C, j'en arrivais parfois à un fichier par fonction.


Actuellement, j'ai un fichier par classe. Découper jusqu'à ce niveau est facile. Malgré cela, dans certain cas, je commence à trouver ces fichiers trop gros, donc je cherche comment séparer le contenu de cette classe sur plusieurs fichiers.

Mon premier essai, qui a échoué, consistait en gros à faire ceci :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
fichier class_a_core.py
class A:
    def __init__(self):
        print("A.__init__")
 
    def m1(self):
        print("A.methode 1")
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
fichier class_a_tools.py
class A:
    def m2(self):
        print("A.methode 2")
et un exemple d'utilisation:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
from multi_fic.class_a_tools import *
from multi_fic.class_a_core import *
 
a = A()
 
a.m2()
Bien sur cela ne marche pas.


Est-ce que quelqu'un a une piste pour que j'arrive à découper mon application en petit fichier.

Cordialement
Emmanuel