Usuário com melhor resposta
Urgente! Orientação sobre como trabalhar com vários tipos de projetos diferentes no projeto principal..Socorro!!!!

Pergunta
-
Amigos,
Estou com problema sério e peço a gentileza da ajuda dos experientes, ou aqueles que já passaram por isso:
Hoje temos o módulo de fábrica (PPCP) que funciona muito bem, porém ele foi desenvolvido para UM tipico específico de indústria, não funciona em nenhum outro. Agora a nossa empresa prentende conquistar outros mercados industriais, e claro que nada irá funcionar e a batata quente está com o pessoal de TI...rs. Acabei de perder os últimos fios de cabelo que restavam....
Pensei em transformar o projeto atual da fábrica em uma camada (dll), já que ele é especifico para UM tipo de mercado, e como o outro será mais abrangente, também seria outra camada (dll).
Se esta lógica está correta, como o sistema saberia qual DLL do projeto de fábrica usar? Eu "acho" que eu poderia "incluir" estas duas camadas (projeto de fábrica 1 e projeto de fábrica 2) no projeto principal, e parâmetros para saber qual módulo usar.
Eu não sei se há outros modos mais elegantes para resolver isso, ou se alguém já passou por isso, e ficaria muito grato se algúem pudesse dar algumas dicas e algum material para eu estudar.
Usamos VS 2.010, WCF, SL 4, SQL Server 2.008 R2 e C#.
Muito obrigado e um forte abraço!
- Movido Kelps Leite de Sousa terça-feira, 26 de abril de 2011 14:28 É uma dúvida sobre arquitetura de projeto, não de Silverlight (De:Silverlight)
Respostas
-
Olá Marcelo de Oliveiras,
Já ouviu falar do MEF? http://mef.codeplex.com/ Acho que esta framework pode te ajudar.
O MEF te ajuda a compor uma aplicação importando partes do código que serão descobertas em run time.
Funcionaria assim: você precisaria isolar a parte que é comum da parte que vai variar para cada empresa. Na parte que varia você implementa interfaces e as importa na parte que não varia. Assim, a parte que varia de indústria para indústria você pode criar um projeto para cada industria e implementar código específico, sem com isto ter que reescrever tudo. A pegadinha fica no instalador: cada industria precisará de um que irá empacotar os assemblies corretos.
Acho que o MEF vai ser uma boa saida para você.
Espero ter ajudado.
Allan- Marcado como Resposta Wagner dos Santos VasconcellosModerator quinta-feira, 23 de junho de 2011 20:32
-
Marcelo,
Vc tem que trabalhar IOC hj tem vários frameworks que fazem esse trabalho para vc.
http://weblogs.asp.net/sfeldman/archive/2008/02/14/understanding-ioc-container.aspx
http://www.codeplex.com/site/search?query=IOC&ac=8
Eu mesmo uso o MEF
http://mef.codeplex.com/
http://blog.noop.se/archive/2008/09/15/managed-extensibility-framework-mef-used-to-make-a-composite-web.aspx
http://www.hanselman.com/blog/ExtendingNerdDinnerAddingMEFAndPluginsToASPNETMVC.aspx
ele é bem simples de usar.
Não esqueça de usar o componente </> na barra para posta seu código.- Marcado como Resposta Wagner dos Santos VasconcellosModerator quinta-feira, 23 de junho de 2011 20:32
Todas as Respostas
-
Olá Marcelo de Oliveiras,
Já ouviu falar do MEF? http://mef.codeplex.com/ Acho que esta framework pode te ajudar.
O MEF te ajuda a compor uma aplicação importando partes do código que serão descobertas em run time.
Funcionaria assim: você precisaria isolar a parte que é comum da parte que vai variar para cada empresa. Na parte que varia você implementa interfaces e as importa na parte que não varia. Assim, a parte que varia de indústria para indústria você pode criar um projeto para cada industria e implementar código específico, sem com isto ter que reescrever tudo. A pegadinha fica no instalador: cada industria precisará de um que irá empacotar os assemblies corretos.
Acho que o MEF vai ser uma boa saida para você.
Espero ter ajudado.
Allan- Marcado como Resposta Wagner dos Santos VasconcellosModerator quinta-feira, 23 de junho de 2011 20:32
-
Marcelo,
Vc tem que trabalhar IOC hj tem vários frameworks que fazem esse trabalho para vc.
http://weblogs.asp.net/sfeldman/archive/2008/02/14/understanding-ioc-container.aspx
http://www.codeplex.com/site/search?query=IOC&ac=8
Eu mesmo uso o MEF
http://mef.codeplex.com/
http://blog.noop.se/archive/2008/09/15/managed-extensibility-framework-mef-used-to-make-a-composite-web.aspx
http://www.hanselman.com/blog/ExtendingNerdDinnerAddingMEFAndPluginsToASPNETMVC.aspx
ele é bem simples de usar.
Não esqueça de usar o componente </> na barra para posta seu código.- Marcado como Resposta Wagner dos Santos VasconcellosModerator quinta-feira, 23 de junho de 2011 20:32
-
Olá amigos.
Desculpe na demora em responder, eu estava viajando e voltei hoje.
Vou dar uma olhada no MEF e nos outros frameworks sugeridos por vocês.
Seilor, por favor você pode dizer o que significa IOC ou onde eu posso ler algo sobre isso?
Obrigado e um forte abraço a todos.