Si tout va bien une question de relativité simple. Je commence à travailler sur un nouveau projet interne pour créer la tractabilité des appareils réparés dans les bâtiments.
La base de données est stockée à distance sur un serveur Web et sera accessible via l'API Web (sortie JSON) et protégée avec OAuth. L'interface graphique frontale est en cours dans WPF, et le code d'entreprise en C #.
De là, je vois les différentes couches Présentation / Application / Datastore. Il y aura du code pour gérer tous les appels authentifiés à l'API, une classe pour représenter les entités (objets métier), des classes pour construire les entités (objets métier), des parties pour l'interface graphique WPF, des parties des modèles de vue WPF, etc.
Est-il préférable de créer cela dans un seul projet ou de les diviser en projets individuels?
Dans mon cœur, je dis que ce devrait être de multiples projets. Je l'ai fait dans les deux sens auparavant et j'ai trouvé que les tests étaient plus faciles avec une seule solution de projet, mais avec plusieurs projets, des dépendances récursives peuvent apparaître. Surtout quand les classes ont des interfaces pour le rendre plus facile à tester, j'ai trouvé que les choses pouvaient devenir gênantes.