Lógica de Domínio (Domain Logic)
Roteiro de
Transação
Organiza
a lógica de negócio em procedimento em que cada procedimento trata uma única
solicitação da apresentação
Modelo de domínio
Um
modelo de objetos do domínio que incorpora tanto o comportamento quanto os
dados
Módulo Tabela
Uma
instância única que trata a lógica de negócio para todas a linhas de uma tabela
ou visão em um banco de dados.
Camada de Serviço
Define a fronteira de uma
aplicação com uma camada de serviços que estabelece um conjunto de operações
disponíveis e coordena a resposta da aplicação em cada operação.
Arquiteturais de Fontes de Dados (Data Source Architectural
Patterns)
Gateway de
Tabela de Dados:
Um
objeto que atua como um Gateway para uma tabela de um banco de dados. Uma instância lida com todas as linhas na
tabela.
Gateway de
linha de dados
Um
objeto que atua como um Gateway para um único registro em uma fonte de
dados. Existe uma instância por linha.
Registro Ativo
Um
objeto que encapsula uma linha em uma tabela ou visão de um banco de dados e o
acesso ao banco de dados e adiciona lógica de domínio e esses dados.
Mapeador de
Dados
Uma
camada de Mapeadores que move dados entre objetos e um banco de dados enquanto
os mantém independentes uns dos outros e do próprio mapeador.
Padrões comportamentais Objeto-Relacional(Object Relational
Behavioral)
Unidade de
Trabalho
Mantém
uma lista de objetos afetados por uma transação de negócio e coordena a
gravação das alterações e a resolução de problemas de concorrência.
Mapa de
Identidade
Garante
que cada objeto seja carregado apenas uma vez mantendo cada objeto carregado em
um mapa. Procura pelos objetos usando o
mapa, quando há uma referência para eles.
Carga Tardia
Um objeto que não contém
todos os dados de que você precisa, mas que sabe como obtê-los.
Padrões estruturais Objeto-Relacional (Object Relational
Structural)
Campo Identidade
Guarda o campo ID de um
Banco de dados em um objeto para manter a identidade entre um objeto na memória
e uma linha do banco de dados.
Mapeamento de
chave estrangeira
Mapeia uma associação
entre objetos para uma referência de chave estrangeira entre tabelas.
Mapeamento de
Tabela Associativa
Grava
uma associação com uma tabela com chave estrangeira para as tabelas que estejam
vinculadas pela associação.
Mapeamento
Dependente
Faz
uma classe executar o mapeamento no banco de dados de uma classe filha.
Valor Embutido
Mapeia
um objeto em diversos campos da tabela de outro objeto
LOB Serializado
Grava
um grafo de objetos serializando-os em um único objeto grande (LOB – Large
Object), o qual é armazenado em um campo de banco de dados.
Herança de
tabela única
Representa
uma hierarquia de herança de classes como uma única tabela que tem colunas para
todos os campos das diversas classes
Herança de
tabela de classes
Representa
uma hierarquia de herança de classes com uma tabela por classe
Herança de
tabela concreta
Representa
uma hierarquia de herança de classes com uma tabela por classe concreta na hierarquia
Mapeador de
Heranças
Uma estrutura para
organizar mapeadores de banco de dados que tratam hierarquias de herança.
Padrões de Mapeamento de Metadados Objeto-Relacionais
(Relational Metadata Mapping)
Mapeamento de
metadados
Armazena os detalhes do mapeamento
objeto-relacional em metadados
Objeto de
pesquisa
Um
objeto que representa uma consulta no Banco de dados
Repositório
Faz
a mediação entre as camadas de domínio e d mapeamento de dados usando uma
interface do tipo coleção para acessar os objetos do domínio.
Padrões de Apresentação Web (Web Presentation)
Modelo Vista
Controlador
Divide
a interação da interface com o usuário em três papeis distintos.
Controlador de
Página
Um
objeto que trata uma requisição para uma página ou ação específica em um web
site.
Front
Controller
Um
controlador que trata todas as requisições para um website.
Vista Padrão
Representa
informações em HTML inserindo marcadores em uma págica HTML.
Vista de
Transformação
Uma
visão que processa dados do domínio elemento por elemento e os transforma em
HTML.
Vista em Duas
Etapas
Transforma
dados do domínio em HTML em duas etapas: Primeiro, formando algum tipo de
página lógica e, depois, representando essa página lógica em HTML.
Controlador de
Aplicação
Um
ponto centralizado para manipular a navegação de tela e o fluxo de uma
aplicação.
Padrões de Distribuição (Distribuition)
Fachada Remota
Fornece
uma fachada de granularidade alta sobre objetos de granularidade baixa para
melhorar a eficiência em rede.
Objeto de
Transferência de Dados
Um
objeto que transporta dados entre processos de modo a reduzir o número de
chamado de métodos.
Padrões de Concorrência offline (Offline Concurrency)
Bloqueio
Offline otimista
Previne conflitos entre
transações de negócio concorrentes detectando um confliot e desfazendo a
transação.
Bloqueio
offline pessimista
Previne conflitos entre
transações de negócio concorrentes permitindo que apenas uma transação de
negócio acesse os dados de cada vez.
Bloqueio da
Granularidade Alta
Bloqueia um conjunto de
objetos relacionados utilizando para isso um único bloqueio.
Bloqueio
implícito
Permite ao código de uma
camada supertipo ou de um framework obter bloqueios offline.
Padrões de Estado de Sessão (Session State)
Estado de
Sessão no Cliente
Armazena
o estado da sessão do cliente.
Estado da
Sessão do Servidor
Mantém
o estado da sesão em um sistema servidor de forma serializada
Estado da
Sessão no BD
Armazena
dados de sessão no BD
Padrões Básicos (Base Patterns)
Gateway
Um
objeto que encapsula o acesso a um sistema ou recuros externo
Mapeador
Um
objeto que estabelece uma comunicação entre dois objetos independentes
Camada
Supertipo
Um tipo que atua como o
supertipo para todos os tipos nesta camada.
Interface
Separada
Define
uma interface em um pacote separado de sua implementação
Registro
Um
objeto conhecido que outros objetos podem usar para encontrar objetos e
serviços comuns.
Objeto Valor
Um
objeto pequeno e simples, como dinheiro ou um intervalo de datas cuja igualdade
não é baseada em identidade.
Dinheiro
Representa
um valor monetário
Caso Especial
Uma subclasse que fornece
comportamento especial para casos particulares.
Plugin
Conecta
classes durante a configuração, m vez de na compilação.
Stub de
Serviço
Remove
a dependência de serviços problemáticos durante os testes.
Conjuntos de
Registros
Uma representação em
memória de dados tabulares.
Nenhum comentário:
Postar um comentário