visual-studio - from - visual studio new project




Dossiers ou projets dans une solution Visual Studio? (5)

Lors de la division d'une solution en couches logiques, quand est-il préférable d'utiliser un projet séparé plutôt que de le regrouper dans un dossier?


Séparer votre code source en plusieurs projets n'a de sens que si vous ... ... Plus de développeurs impliqués et que vous voulez traiter leur travail comme une boîte noire consommable. (pas très recommandé) ...

Pourquoi n'est-ce pas recommandé? Je l'ai trouvé très utile pour gérer une application avec plusieurs développeurs travaillant sur différentes parties. Facilite les checkins, principalement en éliminant virtuellement les fusions. Très rarement deux développeurs devront travailler sur le même projet en même temps.


Denny a écrit:

Personnellement, je pense que si le code réutilisable est divisé en projets, il est plus simple d’utiliser d’autres lieux que s’il s’agit simplement de dossiers.

Je suis vraiment d'accord avec cela - si vous pouvez le réutiliser, il devrait être dans un projet séparé. Cela dit, il est également très difficile de réutiliser efficacement :)

Ici, à SO, nous avons essayé d'être très simple avec trois projets:

  • Projet Web MVC (qui permet de séparer vos calques en dossiers par défaut)
  • Projet de base de données pour le contrôle des sources de notre base de données
  • Tests unitaires contre modèles / contrôleurs MVC

Je ne peux pas parler pour tout le monde, mais je suis content de la simplicité avec laquelle nous l'avons gardé - accélère vraiment la construction!


Je pense vraiment qu'il est préférable de diviser le projet également, mais tout dépend de la taille du projet et du nombre de personnes qui y travaillent.

Pour les projets plus importants, j'ai un projet pour

  • accès aux données (modèles)
  • prestations de service
  • l'extrémité avant
  • des tests

J'ai eu le modèle de Rob Connery et son application de vitrine ... semble bien fonctionner.

mvc-storefront


Par défaut, créez simplement un nouveau dossier dans le même projet

  • Vous obtiendrez un seul montage (sans gymnastique supplémentaire ILMerge)
  • Plus facile à dissimuler (parce que vous aurez moins de types et de méthodes publics, idéalement pas du tout)

Séparer votre code source en plusieurs projets n'a de sens que si vous ...

  • Certaines parties du code source font partie du projet mais ne peuvent pas être déployées par défaut ou du tout (tests unitaires, plug-ins supplémentaires, etc.)
  • Plus de développeurs impliqués et vous voulez traiter leur travail comme une boîte noire consommable. (pas très recommandé)
  • Si vous pouvez clairement séparer votre projet en couches / modules isolés et que vous voulez vous assurer qu'ils ne peuvent pas consommer de manière croisée les membres internes . (également déconseillé car vous devrez décider quel aspect est le plus important)

Si vous pensez que certaines parties de votre code source pourraient être réutilisables, ne le créez toujours pas en tant que nouveau projet. Attendez simplement que vous souhaitiez vraiment le réutiliser dans une autre solution et isolez-le du projet d'origine si nécessaire. La programmation n’est pas une légende, la réutilisation est généralement très difficile et n’arrive souvent pas comme prévu.


Si vous créez plusieurs projets, assurez-vous que tous ceux qui ajoutent du code à la solution sont pleinement conscients de leur intention et font tout ce qui est en leur pouvoir pour les amener à comprendre les dépendances entre les projets. Si vous avez déjà essayé de régler le problème quand quelqu'un est parti et que vous avez ajouté des références qui n'auraient pas dû être là et que cela a duré des semaines, vous comprendrez ce point.







projects-and-solutions