Pergunta

para VS 2005 existe um número máximo de projectos que irão causar problemas de desempenho. Temos agora até 25 projetos e crescente. Devemos fazer essas binário referenciados ou estamos quebrando a nossa lógica de aplicação em muitos projetos diferentes. Parece começar a ser uma questão grande desempenho recentemente.

Foi útil?

Solução

Ter muitos arquivos DLL pode custar-lhe em tempo de execução para que eu recomendaria que você tentar minimizar a quantidade de projetos. Criando várias soluções também é uma opção, mas tentar fazer as soluções independentes uns dos outros de modo que você não tem que depurar e implementar novas funcionalidades através de várias soluções - que pode ser complicado.

Dê uma olhada neste artigo: Projeto anti-padrão: Muitos projetos em um Visual studio Solution Arquivo

.

Outras dicas

Existe uma cadeia de dependência através de todos os 25 projetos? Se alguns projectos não são dependentes dos outros, colocá-los em sua própria solução.

não compilar a solução inteira se você não tem que e um geralmente não faz. Normalmente, você pode clique direito sobre o projeto que você acabou de modificar e compilar apenas isso. VS vai descobrir quais projetos dependente precisa ser compilado-re.

Use "Iniciar sem depuração" a menos que você está planejando para bater um ponto de ruptura.

São alguns DLLs estável e não mudaram em muito tempo? Eles não têm para a sua solução.

Não procurar solução completa a menos que você realmente precisa.

A limitação real é a mente humana. Quantos arquivos em um projeto pode lidar com isso? Além disso, a menos que você estiver usando ndepends para rastrear dependências, colocando a muitas classes em um projeto pode levar a muitas classes, dependendo outras classes, fazendo mudanças mais difícil e mais arriscado.

Normalmente, tentamos manter a quantidade de projetos dentro de uma solução sob 10. Depois de 10, você começa a ter tempo de compilação lento e lento tempo "recarregar projeto".

Mas a questão principal aqui é por que você tem 26 projetos? Um web site simples poderia ter apenas um projeto, mantendo a camada de dados, camada de negócios, camada de apresentação tudo dentro do mesmo projeto.

Se você estiver projectos divisão apenas para este material 3 camada, eu sugiro que você revise isso. Como exemplo, temos 3 projetos para o 3 camadas. A razão temos 3 níveis em assembly separado é que estamos execting outro software para usar a camada de dados mais tarde em nosso projeto. Mantendo a nossa camada de negócios fora do projeto apresentação principal nos permite facilmente teste de unidade a nossa camada de negócios, mantendo dependências inúteis fora da camada presentatier.

Assim, em geral, manter os projetos sob 10 e revisão se você pode mesclar alguns projetos togheter. Será tanto poupar tempo em tempo de compilação e em tempo de compilação. Também será mais fácil de gerenciar essas DLLs.

Eu diria que custa em tempo de compilação não runtime. E menos é mais rápido, mas talvez você nem sempre construir todos eles. Se for esse o caso, então você deve reduzir a quantidade. outra dividi-los em soluções diferentes. Em seguida, apenas o servidor de compilação vai precisar para construir todos eles e uma compilação diária tem toda a noite para construção; -)

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