Clique aqui para ler esse artigo em PDF.
Boas práticas
Aplicando Padrões de Projeto na prática – Parte 2
Aplicando os padrões Singleton, DAO, Façade, Command e a Técnica Simple Factory a uma aplicação OO
Neste artigo veremos |
·Aplicação dos Padrões de Projeto Singleton, DAO, Façade, Command e da Técnica Simple Factory |
Qual a finalidade |
·Dar continuidade à demonstração de como criar uma aplicação real utilizando padrões de projetos. |
Quais situações utilizam esses recursos? |
·Projetos que tenham foco em melhores práticas como reusabilidade, coesão e facilidade de manutenção terão benefícios com o conteúdo deste artigo. |
Resumo do DevMan
Este artigo é uma continuação do artigo da edição anterior, apresentando os padrões Command, Façade e a técnica Simple Factory. O padrão Command separa o cliente que faz uma requisição de uma operação do objeto que processará essa requisição. O padrão Façade permite a criação de um controlador único, facilitando a manutenção do sistema. A técnica Simple Factory facilita a tarefa de controlar a instanciação de objetos.
Na parte 1 deste artigo, foram apresentados os padrões Singleton, DAO e MVC. Neste artigo, serão abordados os padrões Façade, Command e a Técnica Simple Factory. Os padrões implementados nesse artigo deverão ser aplicados diretamente ao projeto criado no artigo anterior.
O Padrão Façade
Apesar das vantagens da utilização do padrão MVC, discutidas no artigo anterior, em um sistema maior, o fato de existirem vários controladores pode dificultar sua manutenção. Através do padrão Façade, pode-se criar um controlador único, o que facilitará a implementação das visões por fornecer uma interface única para as requisições. Como o código do controlador fica centralizado, a manutenção do código é facilitada, assim como futuras implementações de novos requisitos. Um padrão Façade, com função semelhante a que será implementada nesse artigo, encontra-se na Figura 1, onde páginas Web postam seu conteúdo para um controlador único que implementa o padrão Façade. Quando o controlador único recebe a requisição, através de um parâmetro passado pela página, ele realiza o tratamento da informação, acessando as classes do modelo desejadas.
Figura 1. Exemplo do padrão Façade
Quando um usuário faz uma requisição HTTP, a requisição é processada pela página através de um handler. Para criar um handler personalizado deve-se criar uma classe que implementa a interface IHttpHandler. O controlador único do sistema Contatos será criado utilizando um handler personalizado e mapeando, através do arquivo web.config, todas as requisições para esse controlador. Para criar o controlador único, adicione uma nova classe na pasta Controller, chamada Handler. O código da classe Handler segue na Listagem 1.
As classes ConsultarContatoController e IncluirContatoController deverão ser excluídas do projeto pois não são mais necessárias.
Listagem 1. Classe Handler
01: using System;
02: using System.Data;
03: using System.Configuration;"
[...] continue lendo...