Logo Passei Direto
Buscar
Material
páginas com resultados encontrados.
páginas com resultados encontrados.
details

Libere esse material sem enrolação!

Craque NetoCraque Neto

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

details

Libere esse material sem enrolação!

Craque NetoCraque Neto

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

details

Libere esse material sem enrolação!

Craque NetoCraque Neto

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

details

Libere esse material sem enrolação!

Craque NetoCraque Neto

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

details

Libere esse material sem enrolação!

Craque NetoCraque Neto

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

details

Libere esse material sem enrolação!

Craque NetoCraque Neto

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

details

Libere esse material sem enrolação!

Craque NetoCraque Neto

Ao continuar, você aceita os Termos de Uso e Política de Privacidade

Prévia do material em texto

Este módulo refere-se à utilização do Padrão MVC (Model View Controller) nas aplicações. Originalmente foi criado como um padrão de projeto arquitetural desenvolvido para o ambiente de desenvolvimento Smalltalk, mas ele pode ser utilizado para qualquer aplicação interativa e em diferentes tipos de ambientes. Model-View-Controller (MVC) é um padrão de arquitetura de software que tem como objetivo separar dados ou lógica de negócios (Model) da interface do usuário (View) e do fluxo da aplicação (Control). A idéia é permitir que uma mesma lógica de negócios possa ser acessada e visualizada através de várias interfaces. Na arquitetura MVC, a lógica de negócios (chamada aqui de Modelo) não sabe de quantas nem quais interfaces com usuário estão exibindo seu estado. Alterações feitas na interface não afetarão a manipulação dos dados, e estes poderão ser reorganizados sem alterar a interface do usuário. model-view- controller resolve este problema por meio da separação das tarefas de acesso aos dados e lógica do negócio da apresentação e interação com usuário, introduzindo um componente entre os dois: o Controller. Podemos descrever este padrão da seguinte forma: Model A representação "domínio" especifica da informação em que a aplicação opera. Por exemplo, aluno, professor e turma fazem parte do domínio de um sistema acadêmico. E comum haver confusão pensando que Model é um outro nome para a camada de domínio. Lógica de domínio adiciona sentido a dados crus como, por exemplo calcular se hoje e aniversario do usuário, calcular o total de impostos e fretes sobre um determinado carrinho de compras. Muitas aplicações usam um mecanismo de armazenamento persistente como, por exemplo, um banco de dados para armazenar os dados fornecidos pelo usuário. MVC não cita especificamente a camada para acesso aos dados, porque subentende-se que estes métodos estariam encapsulados pelo Model. View "Renderiza" model em uma forma especifica para a interação, geralmente uma interface de usuário. Controller Processa e responde a eventos, geralmente ações do usuário, e pode invocar alterações no Model quando estas se fizerem necessárias.De maneira prática aplicamos MVC dividindo a aplicação em 3 pacotes básicos: Model, view, control. Iniciamos a aplicação pela classe Aluno no pacote model: package mvc.model; public class Aluno { private String nome; private String ra; } A próxima etapa é a criação da classe ControladorAlunos do pacote control, que é responsável pela interligação do modelo e a interface gráfica. package mvc.control; import mvc.model.*; import mvc.view.*; public class ControladorAlunos { private Map alunos = new HashMap(); public void inserirAluno(String ra, String nome) { Aluno aluno = new Aluno(); aluno.setRa(ra); aluno.setNome(nome); alunos.put(aluno.getRa(), aluno); "Aluno inserido com sucesso!"); } public void ra) { if (alunos.containsKey(ra)) { alunos.remove(ra); "Aluno removido com sucesso!"); } else {JOptionPane.showMessageDialog(null, "Não existe aluno com esse RA!"); } } public Aluno pesquisarAluno(String ra) { if (alunos.containsKey(ra)) { return alunos.get(ra); } else { JOptionPane.showMessageDialog(null, "Não existe aluno com esse RA!"); return null; } } } E por fim criamos a classe FormAluno no pacote view, classe responsável pela entrada dos dados (interface gráfica): public class FormAluno extends JFrame { //As declarações dos componentes visuais foram suprimidos, de maneira que facilite o entendimento da aplicação. private JButton getJButtonInserir() { java.awt.event.ActionListener() { public void { // solicita ao controlador que efetue a inclusão do aluno jTextNome.getText()); } }); } return jButtonInserir;} private JButton getJButtonPesquisar() { { public { // solicita ao controlador que efetue a busca pelo RA Aluno aluno = // se encontrou um aluno com RA if (aluno != null) { // exibe as informações na tela jTextRa.setText(aluno.getRa()); jTextNome.setText(aluno.getNome()); } } }); } return jButtonPesquisar; } private JButton getJButtonRemover() { java.awt.event.ActionListener() { public void { // solicita ao controlador que efetue a exclusão do aluno pelo RA controlador.removerAluno(jTextRa.getText()); } }); } return jButtonRemover;} public FormAluno() { super(); initialize(); controlador = new ControladorAlunos(); } } Exercício 1: Sobre padrão arquitetural (MVC), bastante usado na estruturação de aplicações Web desenvolvidas em Java, analise as seguintes afirmativas: I. componente View pode ser implementado com a tecnologia JSP. II. Front Controller (do catálogo J2EE) é um dos padrões usados na implementação do componente model do MVC. III. A distribuição de papéis e responsabilidades proposta pelo MVC aumenta a manutenibilidade da aplicação Web Em relação às afirmativas, a opção correta é: A) I B) I e II C) D) II e III E) I, II e IIIExercício 2: Na arquitetura de software MVC, é um recurso utilizado na camada de persistência: A) JSP. B) JSF. C) Servlets. D) Structs. E) MySQL. Exercício 3: Com relação aos conceitos de arquitetura de aplicações, MVC (Model-View- Controller) tem como objetivo principal: A) unir em uma mesma camada os artefatos de interface de usuário e de dados. B) distribuir a carga de execução do sistema entre cliente e servidor. C)separar a representação de dados e fluxo da aplicação da interface gráfica. D) separar a interface de acesso da implementação das classes. E) unir a carga de execução do sistema entre cliente e servidor.

Mais conteúdos dessa disciplina