Pergunta

As nossas soluções atuais / projetos têm várias classes combinadas em um único arquivo, eu disse isso foi feito devido aos tempos de compilação lentos em VS.

Este é um problema e solução confirmada?

Podemos dividir esses distante agora que estamos usando o sistema VS2008 Team? Tem mais alguém separou as classes em arquivos diferentes e ainda teve um bom desempenho?

Foi útil?

Solução

Eu trabalho na equipe VB.Net IDE e posso dizer-lhe que colocar tudo em um arquivo fará VS ficar mais lento, não mais rápido. VB.Net funciona muito bem com aulas em diferentes arquivos.

A única vez que isso nunca iria fazer a diferença é se você tivesse um disco rígido lento incrivelmente, e os arquivos que estavam em partes muito diferentes dos discos físicos (resultando em mais e mais procurar instruções). Em geral, este não deve ser um problema e para o VB.Net IDE isso só seria um problema durante a inicialização. Temos várias camadas de caching que ajudam a eliminar até mesmo esses tipos de problemas.

Você pode ser capaz de descobrir alguns benefícios mínimos para esta abordagem se você considerar apenas o tempo crua que leva o compilador de linha de comando para operar. IMHO, os números mais importantes são o respnosiveness do Visual Studio e o tempo de compilação relativo para Visual Studio. VS resposta vai diminuir se tenha extremamente arquivos longos (que é o que acabará por ocorrer se você colocar sempre classe em um único arquivo).

Outras dicas

Qual é o seu hardware como?

A grande gargalo com VS é que ele precisa de ler e cargas gravação de pequenos arquivos.

Um rápido disco rígido ou dois pode melhorar cargas de desempenho!

Eu estou usando C # ao invés de VB.NET, mas eu nunca encontrou problemas de desempenho do compilador. Parece que isso é algum tipo de otimização prematura. Eu não me importo quanto tempo o meu servidor de compilação precisa criar o aplicativo. Não sacrifique clareza para o desempenho tempo de compilação.

Parece que você pode querer tentar convencer sua equipe a olhar para o design da solução; ele pode não ser o ideal para ter uma solução gigante com todos os projetos em lá. Se o tempo de construção são de fato um problema, eu preferiria resolvê-lo por quebrar a solução até partes lógicas, se possível.

Eu não acredito que o agrupamento muitas classes em um único arquivo irá melhorar significativamente o desempenho de construção para projectos normais. Deve ser seguro para quebrá-las para fora em mais arquivos (um por classe é padrão).

A única exceção que eu tenho que correr para se projetos de "Web Site". Eu não tenho quaisquer dados científicos, mas estes do parecem ficar mais lento como o número de arquivos aumenta. Para correção que você pode convertê-lo em um projeto "Aplicação Web".

Ter muitos projetos em uma solução também é conhecido por fazer VS lento, mas que não soa como o seu problema.

Este é um problema confirmado e uma solução confirmada. Na Tech Ed este ano disseram que ele não será mais um problema no VS2010, que você pode baixar a versão beta do e experimentar.

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