Arquitetura de projeto
02/04/2013
0
Bom, como todo começo, o ruim é formar uma arquitetura boa em um projeto.
Irei começar um projeto de TCC e também quem sabe uma futura aplicação para uso comercial...
Bom, irei utilizar ASP.NET MVC4 com Fluent Nhibernate
Aí vem a dúvida, como organizar o projeto?
Pensei assim, deixo claro que não tenho experiência com arquitetura rsrsrs
Projeto.Core (Conterá algumas helper/repository,dto)
Projeto.Persistence (projeto apenas para o mapping do nhibernate
Projeto.Entities - as entities
Projeto.Web - parte web
Projeto.Test - test
Mas aí vem, eu gostaria de separar por modulos do meu sistema e cada modulo um projeto
Por exemplo
Projeto.Estoque
Projeto.Financeiro
Etc...
Mas não sei como criar uma arquitetura elegante...
Gostaria de opiniões, sugestões, se trabalham com uma arquitetura boa, poderia tirar um print e mostrar-me como está a estrutura...O que vier para me auxiliar, fico muito grato.
Att
Rodrigo
Rodrigo Cezar
Posts
03/04/2013
Robson Alves
Separar os módulos por projeto pensando em arquitetura e na pasta ele fica em pastas distintas.
Fica organizado e no meu ponto de vista, correto.
03/04/2013
Rodrigo Cezar
Separar os módulos por projeto pensando em arquitetura e na pasta ele fica em pastas distintas.
Fica organizado e no meu ponto de vista, correto.
Pois é, aí eu separaria com Folder Solution né?
Lib
projeto.core
projeto.persistence
plugins
projeto.financeiro
projeto.estoque
web
projeto.web
test
projeto.test
Algo assim...Mas ainda não sei se é o correto
03/04/2013
Robson Alves
Para ter a certeza de ser correto ou não, você tem que seguir uma diretriz.
O que seria essa diretriz?
- Seria uma metodologia, um pattern ou uma estrutura fixa pré-determinada por algum especialista.
Por que cheguei nesse ponto?
- A estrutura do seu sistema tem que atender as necessidades do mesmo. Você quer algo modular, então separando em projetos e subsequente os projetos em pastas, você pode realizar a referência dos módulos quando se fizer necessário.
Vai parecer estranho, mas se isso atende sua requisição, isso é uma arquitetura.
Um pattern é um padrão elegante para resolução de um ou N propósitos, mas nunca é a solução do mundo.
Abraços
03/04/2013
Rodrigo Cezar
Para ter a certeza de ser correto ou não, você tem que seguir uma diretriz.
O que seria essa diretriz?
- Seria uma metodologia, um pattern ou uma estrutura fixa pré-determinada por algum especialista.
Por que cheguei nesse ponto?
- A estrutura do seu sistema tem que atender as necessidades do mesmo. Você quer algo modular, então separando em projetos e subsequente os projetos em pastas, você pode realizar a referência dos módulos quando se fizer necessário.
Vai parecer estranho, mas se isso atende sua requisição, isso é uma arquitetura.
Um pattern é um padrão elegante para resolução de um ou N propósitos, mas nunca é a solução do mundo.
Abraços
Entendi, mas aí vem mais uma dúvida, por exemplo, eu crio projeto do tipo dll para projeto.estoque, etc
Ou eu uso projeto do tipo website, para isso? como seria melhor será?
03/04/2013
Robson Alves
Por se modular, os projetos que estarão particionados, eles serão do tipo Class Library.
Neles conterá a lógica daquele módulo. Suas telas estarão dentro do projeto Web e em pastas ou como achar melhor organizar.
Essas telas farão o consumo da inteligência da camada correspondente!
Pensando:
Neste caso entra outra parte de estudo do seu negócio.
Já que você visa vender, tem que ver qual a melhor estratégia.
Vc vai programar configurações para tornar a modularidade do projeto mais configurável ou não?
Fui categórico na resposta, mas irá depender do rumo que você desejar!
Abraços.
03/04/2013
Rodrigo Cezar
Por se modular, os projetos que estarão particionados, eles serão do tipo Class Library.
Neles conterá a lógica daquele módulo. Suas telas estarão dentro do projeto Web e em pastas ou como achar melhor organizar.
Essas telas farão o consumo da inteligência da camada correspondente!
Pensando:
Neste caso entra outra parte de estudo do seu negócio.
Já que você visa vender, tem que ver qual a melhor estratégia.
Vc vai programar configurações para tornar a modularidade do projeto mais configurável ou não?
Fui categórico na resposta, mas irá depender do rumo que você desejar!
Abraços.
Obrigado pelas respostas, bom, irei analisar e fazer alguns testes de como posso fazer, a principio seria algo mais configuravel, aonde o cliente "compra" o modulo que quer, e vai apenas o modulo que ele quer, para isso, uma dll não seria o ideal, já que todas as telas, controllers irão ficar no projeto Web...
Clique aqui para fazer login e interagir na Comunidade :)