Hallo hanspeter,
ich gehe davon aus, dass du ein paar gedanken anderer lesen möchtest und nicht die ultimative Antwort erwartest
.
Ab mittelgroßen Projekten (>1000PT) und/oder dort wo mehrere Client-Systeme zumindest angedacht sind wird bei uns auf einem klassischen Mehrschichtensystem aufgesetzt. Grob gesagt gibt es Klassen die für die gesamte Persistenz (
DB-Zugriffe, Dateien, usw.) zuständig sind, die Business-Schicht mit der eigentlichen Logik und dann natürlich die Präsentationsschicht. Alles jetzt recht Grob erklärt.
Bei kleinen Projekten oder wo nicht andere wirklich gute Gründe für eine Mehrschichtapplikation vorliegen geht die Kosten/Nutzen Rechnung einfach nicht auf und es wird 2-Schicht orientiert programmiert.
Zitat:
Erweiterungen ziehen Änderungen im Quellcode nach sich.
Trifft auf beide deiner genannten Varianten zu. Aus unserer Erfahrung ist bei halbwegs guter Schichtenarchiktur ist im Mehrschichtbereich sogar tendenziel weniger zu tun.
Was fehlt ist, das Mehrschicht-Applikationen besser auf Teams verteilt werden können und letztlich auch der Test davon profitieren kann.