Ich bin der einzige Entwickler eines Projekts, das wie jedes Softwareprojekt in Zukunft von jemand anderem übernommen werden kann.
Angenommen, ich habe das Muster X zum Implementieren von Feature A verwendet. Nach dem Entwickeln und Beenden des Features habe ich festgestellt, dass ich dasselbe Feature mithilfe von Muster Y implementieren kann, das ich gerade kennengelernt habe. Aber Funktion A funktioniert gut, und das Refactoring von X nach Y ist zeitaufwändig und bietet wenig Nutzen.
Dann ist es Zeit, Feature B zu implementieren. Es ist ähnlich wie A, aber dieses Mal möchte ich diese Gelegenheit nutzen, um mit Muster Y zu spielen. Ich freue mich über das Endergebnis, besser als bei Feature A, aber jetzt verwendet mein Code zwei verschiedene Muster, X und Y, für ähnliche Merkmale.
Es gibt jedoch keinen wirklichen Grund, unterschiedliche Muster zu verwenden, außer der Tatsache, dass AI beim Erstellen von Feature AI nicht geschickt genug war, um dasselbe Muster wie für Feature B zu verwenden.
Beachten Sie, dass es bei dieser Frage nicht darum geht , das richtige Muster für ein bestimmtes Problem auszuwählen. Es geht um zwei Muster, die gleichzeitig in der Codebasis vorhanden sind, um ähnliche Probleme zu lösen. Diese Muster könnten auf eines reduziert werden, wenn genügend Zeit für die Umgestaltung vorhanden ist.
- Riecht dieser Code?
- Was sind die Nachteile, wenn der Quellcode so bleibt?
- Sollte ich mich daran halten, nur ein Muster zu verwenden? dh Refaktor A, um Y zu verwenden oder X weiterhin zu verwenden, wenn B geschrieben wird?
- Wie kann ich in der Quelle mitteilen, dass der Grund, warum es zwei unterschiedliche Muster für ähnliche Funktionen gibt, im Wesentlichen kein Grund ist?
- Mache ich mir zu viele Sorgen darüber, was der nächste Entwickler über meinen Code denkt?