Ich definiere ein Projekt als ein SVN-Verzeichnis, das Stamm, Zweige und Unterverzeichnisse mit Tags enthält.
Nach welchen Kriterien entscheiden Sie, wann Sie ein Projekt in zwei Projekte aufteilen oder mehrere Projekte zu einem zusammenfassen? - Eine App pro "Projekt" mit einem gemeinsamen Projekt für gemeinsame Quellen und Ressourcen? - Ein großes "Projekt" mit allen Quellen und Ressourcen für die App?
Ein einzelnes Projekt oder mehrere Projekte haben beide ihre Vor- und Nachteile. Wir tendieren eher zu einem Einzelprojekt und ich versuche herauszufinden, ob das der richtige Ansatz ist.
Geteilte Projekte ermöglichen eine bessere Kontrolle darüber, wie die verschiedenen Teile der Suite eine Änderung aufnehmen. Die gemeinsame Bibliothek kann versioniert werden, und verschiedene Anwendungen können sich für die Verwendung einer bestimmten Version entscheiden (Maven-Dep-Management-Ansatz).
Geteilte Projekte schaffen auch mehrere Klassenhierarchien, was den Code insgesamt schwerer verständlich macht und möglicherweise zu Codeduplikationen führt. Ich würde davon ausgehen, dass eine angemessene Gestaltung der Gesamtstruktur und der Beziehungen zwischen den Komponenten der Schlüssel zur Bewältigung dieser Kosten ist.
Ein einheitlicher Projektansatz erleichtert dem Entwickler die Einrichtung eines Arbeitsbereichs und bietet eine einheitliche Klassenhierarchie. Dies ist ein zweischneidiges Schwert, da der Entwickler mit viel mehr Informationen konfrontiert wird (zu viele Klassen, um sie zu verstehen).
Wenn Sie also zu entscheiden versuchen, wo Sie kombinieren und wo Sie trennen sollten, welche Faustregeln verwenden Sie dann?