Framework Entities

18
FRAMEWORK ENTITIES Marcius Gomes Brandão Departamento de Edificações e Rodovias

Transcript of Framework Entities

Page 1: Framework Entities

FRAMEWORK ENTITIES

Marcius Gomes BrandãoDepartamento de Edificações e Rodovias

Page 2: Framework Entities

Agenda

Sobre o Autor Introdução Design Pattern Naked Objects As camadas genéricas Entities Persistence e Validation Entities GUI (CRUD e Search) Benefícios alcançados Bibliografia

Page 3: Framework Entities

Sobre o Autor

Marcius Gomes Brandão Analista de Sistemas do DER Pós-graduando em Gestão de Infra-estrutura de TI,

graduado em Análise e Desenv. de Sistemas (FIC), técnico em Informática Industrial (CEFET-CE).

+15 anos de experiência profissional : Grupo Del Rio, Grupo Empesca, Grupo Marquise;

Page 4: Framework Entities

Introdução

O Framework Entities propõe agilizar e padronizar o processo de desenvolvimento e a manutenção de softwares em Java.

Inspirado em experiências próprias e no “Naked Objects Architectural Pattern” que parte da premissa:

“Muitos dos serviços exigidos pelas aplicações de negócios podem ser implementadas genericamente”

(www.nakedobject.com))

Page 5: Framework Entities

Serviços genéricas

Page 6: Framework Entities

Naked Object Pattern (NOP)

“Porque implementar n camadas se você precisa implementar apenas uma!” (www.nakedobject.com)

Pra que desenvolver Modele seu negócio e o NOP crias as outras

n camadas? camadas pra você

Page 7: Framework Entities

Entities

Não reinventar a roda Reconhecer o padrão java (gets/sets,JPA,JSF,etc) Não é gerador de código

Page 8: Framework Entities

Serviços do Entities

Java 6 Hibernate Hibernate-validator RichFaces e PrimeFaces JBoss-EL (AspectJ) Apache Commons Jasper/IReport Dynamic Jasper JUnit

Page 9: Framework Entities

Entities Persistence

Hibernate Acesso a vários banco de dados ao mesmo tempo Acesso ao Access Acesso a DBF, TXT e CVS (em fase de testes) API simples e flexivel :

IDAO dao = DAOFactory.getInstance().getDAO(Model.class);

Model model = dao.new();

dao.save(model); //ou ainda delete ou lookup.

dao.save(model1,model2,model3,...,model4);

List<Model> lista = dao.query(“From model where id > 10”);

Page 10: Framework Entities

Entities Validation

Hibernate-Validator @Length(min=,max=) @Max(value=) @Min(value=) @NotNull @NotEmpty @Past @Future @Pattern(regex="regexp",flag=) @Patterns(@Pattern(...)) @Range(min=,max=)

Hibernate-Validator @Length(min=,max=) @Max(value=) @Min(value=) @NotNull @NotEmpty @Past @Future @Pattern(regex="regexp",flag=) @Patterns(@Pattern(...)) @Range(min=,max=)

Page 11: Framework Entities

Entities GUI : JSF

RichFaces e PrimeFaces AutoForm e AutoDataTable Paginação no Cliente (novo) Paginação por demanda (novo) Layout customizável (novo) Sort , Super Filter e parâmetros do context (novo) Baseado nas annotations da JPA

Page 12: Framework Entities

Entities GUI : JSF

Page 13: Framework Entities

Entities GUI : JSF

Page 14: Framework Entities

Entities Search

Busca por Faixa Busca por lista Busca por parte do

conteúdo

Page 15: Framework Entities

Benefícios alcançados

Desenvolvimento rápido e ágil Redução de código Padronização do código e da interface do sistemas Rápido aprendizado para novos membros da equipe Fácil manutenção dos sistemas Aprimoramento gradativos conforme necessidades

emergentes.

Page 16: Framework Entities

Perguntas e Discussão

?

Page 17: Framework Entities

Bibliografia

PAWSON,Richard.Naked Objects.Dublin,julho2004. Naked Object.Disponível em http://www.nakedobjects.org Jmatter. Disponível em http://www.jmatter.org

Page 18: Framework Entities

Contato

Marcius Brandão

Analista de Sistemas da Célula de TI do DER

3101-5770

[email protected]