Was ist mit einer C ++ - Quelldatei mit 11.000 Zeilen zu tun?

Wir haben also dieses riesige (11000 Zeilen riesige?) mainmodule.cpp Quell-Datei in unserem Projekt, und jedes mal, wenn ich haben, es zu berühren ich erschaudern.

Als diese Datei ist so zentral und groß, es hält sich häufen mehr und mehr code und ich kann nicht denken, ein guter Weg, um Sie tatsächlich beginnen zu schrumpfen.

Die Datei verwendet wird und aktiv etwas verändert in mehrere (> 10) maintenance-Versionen unserer Produkte und so ist es wirklich schwer umgestalten. Wenn ich "einfach" es aufteilen, sagen wir für einen start, in 3 Dateien, die dann wieder Zusammenführen änderungen von Wartungs-Versionen wird zu einem Alptraum. Und auch wenn Sie split eine Datei mit eine so lange und reiche Geschichte, Verfolgung und überprüfung von alten Veränderungen in der SCC Geschichte wird plötzlich viel schwieriger.

Die Datei enthält im Grunde die "main-Klasse" (Haupt-interne Arbeitsaufteilung und-Koordination) unseres Programms, also jedes mal, wenn eine Funktion Hinzugefügt wird, es wirkt sich auch auf diese Datei und jedes mal, wenn es wächst. 🙁

Was würden Sie in dieser situation tun? Irgendwelche Ideen, wie man neue Funktionen in eine separate Quelldatei, ohne in Unordnung zu den SCC workflow?

(Hinweis auf die Werkzeuge, die Wir verwenden, C++ mit Visual Studio; Wir verwenden AccuRev als SCC aber ich denke, die Art der SCC ist nicht wirklich wichtig hier; Wir verwenden Araxis Merge zu tun ist-Vergleich und Zusammenführen von Dateien)

InformationsquelleAutor der Frage | 

Schreibe einen Kommentar