Flatdnl Posted July 18, 2012 at 12:39 PM Report #469151 Posted July 18, 2012 at 12:39 PM (edited) Bom Dia Galera, Estou estudando sobre Programação em camadas, criei um novo projeto com as seguintes camadas: Dados Negócios Interface Porém tenho algumas duvidas com ralação a essas camadas: Na camada de dados, eu devo separar as classes que tratam de um mesmo "Módulo"?Ex: tenho uma tela de Plano de Corte. (2 tabelas: PC e PC_ITENS) eu devo criar 2 classes diferentes na camada de dados ou posso criar apenas uma classe para gerenciar o CRUD nas duas tabelas? [*]Na camada de Negócios, entra somente as regras referente a camada Dados? Ex: validação dos controles da interface (Campos vazios, dados divergentes, etc) fica na camada Negócios ou no próprio code da intercafe? [*]Devo ter uma referencia em cada camada? Ex: se eu tenho um form frmPlanoCorte, devo criar uma classe na dados e outra na negócios (visando uma "organização" do projeto) ou estou falando besteira? Desde ja agradeço. Att. Edited July 18, 2012 at 12:44 PM by Flatdnl
edmolko Posted August 1, 2012 at 05:11 PM Report #471235 Posted August 1, 2012 at 05:11 PM Na camada de dados, eu devo separar as classes que tratam de um mesmo "Módulo"? Ex: tenho uma tela de Plano de Corte. (2 tabelas: PC e PC_ITENS) eu devo criar 2 classes diferentes na camada de dados ou posso criar apenas uma classe para gerenciar o CRUD nas duas tabelas? Podes utilizar os 2 métodos, isso depende muito se vais utilizar ou não a repository pattern, se vais utilizar um ORM (como o EntityFramwork), etc. Eu, como uso o EntityFramework tenho sempre uma classe (POCO) por tabela da BD. Na camada de Negócios, entra somente as regras referente a camada Dados? Ex: validação dos controles da interface (Campos vazios, dados divergentes, etc) fica na camada Negócios ou no próprio code da intercafe? Depende da tecnologia/metodologia que utilizes, winforms / WPF(MVVM), etc. Idealmente deverás validar os dados implementando a interface IDataErrorInfo. Há validações que serão feitas na camada de dados e outras que serão feitas na camada de negócio. Quanto há questão dos campos vazios poderás até fazê-lo no código da UI. Devo ter uma referencia em cada camada? Ex: se eu tenho um form frmPlanoCorte, devo criar uma classe na dados e outra na negócios (visando uma "organização" do projeto) ou estou falando besteira? Não, a camada de negócio utilizará as classes definidas na camada de dados mais outras classes que aches necessário para tratar da lógica de negócio.
Flatdnl Posted September 12, 2012 at 02:30 PM Author Report #475225 Posted September 12, 2012 at 02:30 PM edmolko, Desculpe pela demora, e obrigado pelas orientações, me ajudou bastante. Abraços.
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now