Désolé pour le mauvais titre Je ne savais juste pas comment le dire correctement.Auriez-vous une usine pour ces méthodes. Méthode statique sur le type ou en usine?
Dire que j'ai une classe appelée Table et ces trois méthodes:
//Creates a new table in underlying provider and returns new Table object.
CreateNew(string Name);
//Opens the table in provider and returns new Table object.
OpenTable(string Path);
//Same action as above just on a collection, and returns a IList<Table>
OpenTables(IList<string> path);
À l'heure actuelle, je me sers quelque chose comme ça, où toutes les méthodes sont statiques du type:
Table tab = Table.OpenTable("SomePath");
Table tab = Table.CreateNew("DummyTableName");
Vous avez l'idée.
Cependant je me demandais si ceux-ci devraient vraiment être dans une usine. Quelque chose comme ceci:
TableFactory factory = new TableFactory();
Table tab = factory.CreateNew("DummyTableName");
Table tab = factory.OpenTable("SomePath");
L'usine ne serait pas statique qui ferait autre code qui utilise une usine difficile à tester
Que pensez-vous?
L'ouverture d'une table nécessite l'appel d'un fournisseur sous-jacent, donc je casserais la règle "pas de travail dans le constructeur" si je n'utilisais qu'un constructeur. –