Escolar Documentos
Profissional Documentos
Cultura Documentos
DE PADRES DE
PROJETO
Introduo
Um padro de projeto definido como uma soluo desenvolvida utilizando boas prticas para um
problema comum que ocorre vrias vezes. Um padro de projeto documenta e explana um problema
importante que pode ocorrer no projeto ou implementao de uma aplicao e ento discute a melhor
soluo prtica para o problema (Marinescu, 2002).
Segundo a SUN, a plataforma J2EE (Java 2 Enterprise Edition) define um padro para o
desenvolvimento de aplicaes multicamadas. Nesta arquitetura, a camada que contm as regras de
negcio, normalmente implementada utilizando Enterprise JavaBeans, pode ficar concentrada no
servidor de aplicaes, sendo compartilhada com diversas aplicaes clientes. As aplicaes clientes
no contm a lgica do negcio, atendo-se somente camada de apresentao. Na camada de
apresentao normalmente so utilizadas as tecnologias de Servlets e JavaServer Pages.
Os Design Patterns buscam facilitar a reutilizao de projetos e arquiteturas bem sucedidos. Eles
auxiliam a escolher alternativas de projeto que tornam um sistema reutilizvel e evitar alternativas
que comprometam a reutilizao. A SUN disponibiliza um catlogo de 15 padres J2EE, que fornece
solues para problemas tipicamente encontrados por arquitetos e designers de aplicaes de
software para a plataforma J2EE. Vamos tratar a partir daqui sobre Composite Entity.
Composite Entity
O padro Composite Entity usado no mecanismo de EJB persistncia. A entidade Composite um
bean de entidade EJB que representa um grfico de objetos. Quando uma entidade composta
atualizada, objetos dependentes internamente bean so atualizados automaticamente como sendo
gerenciada por bean de entidade EJB. Seguem-se os participantes em Composite Entity.
Composite Entity - um bean de entidade primria. Pode ser grosseira ou pode conter um
objeto de granulao grossa a ser utilizado para fins de persistncia.
Coarse-Grained Object - Esse objeto contm objetos dependentes. Ela tem seu prprio ciclo
de vida e tambm gerencia o ciclo de vida de objetos dependentes.
Dependent Object - objeto dependente um objeto que depende objeto granulao grossa
para seu ciclo de vida persistncia.
Exemplo
Passo 1:
Criar objetos dependentes.
DependentObject1.java
DependentObject2.java
Passo 2:
Criar Coarse Grained Object
CoarseGrainedObject.java
Passo 3:
Passo 4:
Criar classe Cliente para usar Composite Entity.
Client.java
Passo 5:
Concluso
O Composite Entity tem como objetivo: modelar, representar e gerenciar um conjunto de objetos
persistentes relacionados em vez de representa-los como entity beans individuais um Composite
Entity representa um grafo de objetos.
O composite Entity uma das estratgias que agregam um conjunto de entidades em um objeto
conceitual do negcio ( padro Business Object). Por exemplo, um objeto pessoa pode ser
composto por um cliente e uma lista de endereos, onde cliente e endereo so entidades que no se
relacionam.
Bibliografia
http://www.devmedia.com.br/breve-estudo-sobre-engenharia-de-componentes/19139
Padres de Projetos Solues Reutilizveis Gamma Erich 2000
http://www.tutorialspoint.com/design_pattern/composite_entity_pattern.htm
http://www.argonavis.com.br/cursos/java/j931/J931_02.pdf