Pergunta
Em um soluções WinForms regulares, como você determina para quebrar classes em diferentes diretórios / namespaces ou projetos separados. Além de dependências binárias deve ver, controladores, modelos todos em diferentes projectos?
Solução
I tendem a acreditar que você pode facilmente trabalhar com um sistema mais simples e separar suas dependências usando pastas. Adicionando projetos extra faz com que o sistema um pouco mais difícil de se trabalhar, implantar e manter como agora você tem vários menores coisas que você tem de coordenar.
Usando pastas que você ainda terá de garantir que os desenvolvedores precipitadas Não ignorar o seu camadas, o que pode ser uma grande preocupação com os desenvolvedores júnior. Você pode atente para violações usando estática verificação (como NDepend), mas nenhum verificador é perfeito. Se você tem uma funcionalidade específica em cada nível que você sente que precisa de outro nível de proteção (interno), em seguida, por todos os meios dividi-la em projetos separados.
Quanto ao que pastas para quebrá-las em I provavelmente seguir as convenções encontrados em web MVP / MVC quadros como o.
Controllers\ Views\ Broken down by controller Model\
Você pode querer ler o este post sobre o tema. Boa sorte.