Pergunta

Quantos projetos em uma única solução é aceitável? E para aquelas aplicações que tenham um grande número de projetos que você colocar os outros DLLs compiladas em alguma pasta comum para ser capaz de executar o aplicativo?

Foi útil?

Solução

Uma vez no Visual Studio um projeto compila a uma montagem, a pergunta que você deve se perguntar é "quantas assembleias devo ter?"

Se não há nenhuma razão para as assembleias para ser usado separadamente, não deve haver nenhuma razão para tê-los dividido em vários projectos. Se você tem várias assembléias para impor camadas, é o que namespaces são para.

Em uma configuração ideal, você deve ter um projeto (= uma montagem) para cada host diferente em seu aplicativo, e um para a sua lógica específica não-host.

YMMV, porém, você pode querer projectos divididos de acordo com quem está a trabalhar sobre as diferentes partes, mas realmente, tentar limitar o número de projetos em sua solução (como eu estou escrevendo isso, eu estou lutando com um 70 + solução de projectos, assim que eu estou falando dos abismos da minha experiência pessoal).

Uma discussão interessante sobre camadas de lógica / física de aplicações pode ser encontrada no blog do Patrick Smacchia (por exemplo, http://codebetter.com/blogs/patricksmacchia/archive/2008/02/10/layering-the-level- métrica-and-a-discurso-de-method.aspx )

Outras dicas

Bem, 42 anos, é claro!

Não há uma resposta certa ou errada a esta. Alguns desenvolvedores gostaria de criar vários projetos dentro do projeto principal. Outros gostam de compilar a uma montagem (DLL) e volta de referência. Depende de sua equipe e local de trabalho.

Eu concordo com as respostas até agora. Um critério adicional é a velocidade de reconstruir a solução ...

Eu acho que isso é algo que depende do tamanho e tipo de seus projetos. mas a partir de minha própria experiência quando o meu número de projetos é mais do que 5 o processo de construção vai demorar muito. então eu tento manter os projetos que eu não preciso de mudar frequentemente em outra solução, a fim de tornar o processo de construção mais rápido.

Enquanto cada projeto é uma funcionalidade válida, separado, e todos os projetos estão intimamente acoplados (tanto quanto finalidade vai), então não é um problema.

O que eu faço, é que tenho um projeto "Bibliotecas" onde eu colocar todos os meus DLLs externos, então referenciá-los diretamente para lá.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top