Ich bin nicht sicher, welches dieser beiden "Muster" das Beste ist. Derzeit verwende ich Option A (in Verbindung mit einem Provider für die Implementierung von Persistenz), aber ich bin jetzt auf dem Weg zu B, besonders im Hinblick auf Komponententests, die das "dependency injection" -Modell verwenden können.Welche Klassenstruktur ist wünschenswerter?
Option A:
class ClassA
{
ClassA() { }
Save();
static List<ClassA> GetClassAs();
}
Option B:
class ClassA
{
ClassA() { }
Save();
}
class ClassARepository
{
ClassARepository() { }
List<ClassA> GetClassAs();
}
Ich denke, was ich frage, ist es eine gute Übung für eine Klasse statische Methoden zu machen, die Rückkehr Sammlungen von Instanzen von sich selbst?
bearbeiten
Es scheint, dass Option B ist die bessere Wahl ein allgemeiner Konsens zu sein. Sieht so aus, als hätte ich eine Menge Refactoring im Voraus: S
Mir war der Name nicht bekannt, aber es scheint, dass ich dieses Muster verwende. Ich gebe dir die Punkte für die beste Antwort :) –