Ich habe nach Antworten in SO oder hier gesucht, aber ohne Ergebnisse, deshalb würde ich Sie fragen.
Nehmen wir an, ich habe zwei verschiedene Projekte - zum Beispiel Server- und Client-Teil einer App. Ich entwickle meinen eigenen Teil, während mein Freund den zweiten macht. Wir beide sollten jedoch einige gemeinsame Schnittstellen wie User
oder AccountInfo
oder ChangableAccount
... verwenden, um Kompatibilität zu gewährleisten. Wenn ein Client beispielsweise Benutzerdaten an den Server sendet, sollte der Server mit derselben Klasse arbeiten. Dasselbe gilt für Schnittstellen usw. Wenn sich Änderungen an einer gemeinsamen Schnittstelle ergeben, sollten beide Projekte ihren Code an die neue Situation anpassen.
Die einzige Lösung, die ich jetzt sehen kann, ist, ein zusätzliches Projekt zu erstellen, in dem alle gemeinsamen Dinge definiert sind. Wir, ich und mein Freund, sollten dieses Projekt als Abhängigkeit zu einem Hauptprojekt (Client oder Server) hinzufügen. Geteiltes Projekt kann von einem Versionskontrollsystem verwaltet werden, so dass wir immer den aktuellsten Stand haben.
Welche andere Lösung würden Sie vorschlagen? Wie werden solche Probleme in professionellen Apps gelöst?