Olá pessoal, bom, na faculdade estou terminando a disciplina de estrutura de dados II, e vamos desenvolver uma aplicação simples em 3 camadas apenas para nos prepararmos para o que vamos ver no semestre que vem…
Bom, eu gostaria de saber se o conteúdo deste mini-ebook está em 3 camadas?
Porque me parece que as validações ele faz na própria classe da Interface, está errado certo? Teria que ter classes apenas para tratar isso, certo?
Link: http://www.myebook.com/ebook_viewer.php?ebookId=42024
valeu galera!!!
Cara eu não entendi …a sua dúvida de fato …pelo link que vc passou a aplicação esta separada em 3 camadas sim …
Lekão
Não deu para ler tudo, mas MVC não é desenvolvimento em 3 camadas!!! MVC é um pattern que faz separação por responsabilidades para desacoplar a camada de visão da camada de negocio…Vale lembrar que existem camadas lógicas e físicas, e sendo assim sua pergunta ficou subjetiva. Outra coisa, o lugar no qual as validações estão sendo feitas não tem nenhuma influencia nas camadas.
Mas veja ai:
Na verdade, o conteúdo do material aborda o padrão MVC, e não arquitetura em 3 camadas.
Pense em camadas como sendo um nível de isolamento físico / lógico.
Bom pessoal, primeiramente obrigado pelas respostas, me fez entender um pouco melhor sobre MVC, mas mesmo assim, eu queria entender este exemplo que foi passado neste Link. Ele utiliza um pacote chamado beans, para representar as tabelas do banco de dados, e utiliza um pacote DAO para manipular esse banco de dados(Isto é persistência). Logo após, ele cria a Interface, e na própria classe da Interface ele trata os dados de entreada, ou seja, isto seria a camada de negócio, certo?
Então quer dizer que a primeira camada do TOPO, é a interface pura, a camada de negócio, são as próprias classes da Interface tratando os dados de entrada(estou referindo apenas a este exemplo do link). É isso?
Valeu galera!
Isso ai não é camada de negocio…isso é uma assunto muito extenso para ser respondido em uma thread, mas vou tentar reduzir ao máximo:
*) Todo sistema, independente de seu contexto(e-commerce, e-bussines, e-learning, maquinário, embutido, corporativo ou não etc…) tem implementação de no mínimo 3 coisas que poderíamos chamar de responsabilidades:
1) Implementação de interface gráficas - refere-se as implementações de código responsável por criar as “telas” no qual o usuário final vai interagir.
2) Regra de Negocio - refere-se as implementações de código responsável validações de consistências de dados,validações e processos no qual o sistema automatiza.
3) Persistência - refere-se as implementações de código responsável transformar dados transientes em dados persistentes e vice versa.
*) alguns sistemas podem ter variações de camadas para menos ou para mais dependendo do domínio da solução, mas este três ai acima citadas são os básicos mesmo, usados como se diz “regra de bolo”.
Desenvolvimento baseado em camadas é quando o arquiteto do sistema identifica as varias responsabilidades existente dentro da solução a ser desenvolvida, isolando sistematicamente umas das outras de modo que de cada um delas (camadas) possa ser alterada ou substituída sem propagar manutenção umas para as outras (acoplamento + coesão). O grande diferencial desta abordagem é conseguir um melhor manutenção de código e principalmente escalabilidade uma vez que assim é possível executar as camadas em maquinas separadas na soluções final.
Este exemplo ai que vc mostrou (eu não cheguei a ver tudo) não tem desenvolvimento em camadas propriamente dito…é umas um bom exercício que explica a aplicabilidade de alguns design patterns.
Sistema em 3 camadas é explicado naquele link que eu passei.
T+