A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Persistência em Software Orientado a Objetos:

Apresentações semelhantes


Apresentação em tema: "Persistência em Software Orientado a Objetos:"— Transcrição da apresentação:

1 Persistência em Software Orientado a Objetos:
Soluções de Mapeamento Objeto-Relacional Marcelo Santos Daibert Orientador: Marco Antônio Pereira Araújo Co-Orientadora: Alessandreia Marta de Oliveira Julio Marcelo Santos Daibert

2 Marcelo Santos Daibert
Motivação Metodologia Contextualização Frameworks de Persistência Estudo de Caso Resultados Conclusão Agenda Motivação Metodologia Contextualização Frameworks de Persistência DePO Instant Objects TiOPF Estudo de Caso: Acadêmico OO Resultados Considerações Finais Marcelo Santos Daibert

3 Marcelo Santos Daibert
Motivação Metodologia Contextualização Frameworks de Persistência Estudo de Caso Resultados Conclusão Motivação Crescente utilização do paradigma orientado a objetos no desenvolvimento de software As estratégias de armazenamento orientadas a objetos não são maduras o suficiente Reduzir o gap entre o paradigma de desenvolvimento orientado a objetos e o modelo relacional de armazenamento de dados A busca por soluções opensource eficazes e eficientes para persistência de objetos em base de dados relacional Marcelo Santos Daibert

4 Marcelo Santos Daibert
Motivação Metodologia Contextualização Frameworks de Persistência Estudo de Caso Resultados Conclusão Motivação Projeto de Iniciação Científica Estratégias de Persistência em Software Orientado a Objetos Estudar as diversas estratégias de persistência Mapeamento Objeto-Relacional Banco de Dados OO Banco de Dados OR Criar uma camada de persistência própria para o ambiente Delphi Marcelo Santos Daibert

5 Marcelo Santos Daibert
Motivação Metodologia Contextualização Frameworks de Persistência Estudo de Caso Resultados Conclusão Metodologia Estudo exploratório de persistência de objetos e camadas de persistência Estudo comparativo entre as estratégias opensource disponíveis para o ambiente Delphi Definição e implementação de uma aplicação utilizando um framework de persistência Utilização de padrões de projeto (Design Patterns) Utilização de ferramenta de versionamento (SVN) Utilização de ferramenta de BugTracking (NSN Projetc) Divulgação dos resultados Marcelo Santos Daibert

6 Marcelo Santos Daibert
Metodologia Marcelo Santos Daibert

7 Marcelo Santos Daibert
Motivação Metodologia Contextualização Frameworks de Persistência Estudo de Caso Resultados Conclusão Metodologia Estudo exploratório de persistência de objetos e camadas de persistência Estudo comparativo entre as estratégias opensource disponíveis para o ambiente Delphi Definição e implementação de uma aplicação utilizando um framework de persistência Utilização de padrões de projeto (Design Patterns) Utilização de ferramenta de versionamento (SVN) Utilização de ferramenta de BugTracking (NSN Projetc) Divulgação dos resultados Marcelo Santos Daibert

8 Marcelo Santos Daibert

9 Marcelo Santos Daibert
Motivação Metodologia Contextualização Frameworks de Persistência Estudo de Caso Resultados Conclusão Metodologia Estudo exploratório de persistência de objetos e camadas de persistência Estudo comparativo entre as estratégias opensource disponíveis para o ambiente Delphi Definição e implementação de uma aplicação utilizando um framework de persistência Utilização de padrões de projeto (Design Patterns) Utilização de ferramenta de versionamento (SVN) Utilização de ferramenta de BugTracking (NSN Projetc) Divulgação dos resultados Marcelo Santos Daibert

10 Marcelo Santos Daibert
Motivação Metodologia Contextualização Frameworks de Persistência Estudo de Caso Resultados Conclusão Contextualização POO – Programação Orientada a Objetos Paradigma OO difere substancialmente do Paradigma Relacional Marcelo Santos Daibert

11 Marcelo Santos Daibert
Motivação Metodologia Contextualização Frameworks de Persistência Estudo de Caso Resultados Conclusão Contextualização Mapeamento Objeto Relacional Escolha de um OID (Object Identification) Mapear atributos para colunas Mapear classes para tabelas Marcelo Santos Daibert

12 Marcelo Santos Daibert
Motivação Metodologia Contextualização Frameworks de Persistência Estudo de Caso Resultados Conclusão Contextualização Mapear Herança Marcelo Santos Daibert

13 Marcelo Santos Daibert
Motivação Metodologia Contextualização Frameworks de Persistência Estudo de Caso Resultados Conclusão Contextualização Mapear Associação 1:1 Mapear Associação 1:n Marcelo Santos Daibert

14 Marcelo Santos Daibert
Motivação Metodologia Contextualização Frameworks de Persistência Estudo de Caso Resultados Conclusão Contextualização Mapear Associação n:n Marcelo Santos Daibert

15 Marcelo Santos Daibert
Motivação Metodologia Contextualização Frameworks de Persistência Estudo de Caso Resultados Conclusão Contextualização Camadas de Persistência Camada de Persistência Marcelo Santos Daibert

16 Contextualização Camadas de Persistência Camada de Persistência
Motivação Metodologia Contextualização Frameworks de Persistência Estudo de Caso Resultados Conclusão Contextualização Camadas de Persistência Camada de Persistência Camada de Persistência Marcelo Santos Daibert

17 Frameworks de Persistência
Motivação Metodologia Contextualização Frameworks de Persistência Estudo de Caso Resultados Conclusão DePO IO TiOPF Frameworks de Persistência Estrutura complexa e genérica responsável pela persistência e manipulação dos objetos. DePO (Delphi Persistent Objects) IO (Instant Objects) TiOPF (TechInside Object Persistent Framework) Marcelo Santos Daibert

18 Frameworks de Persistência
Motivação Metodologia Contextualização Frameworks de Persistência Estudo de Caso Resultados Conclusão DePO IO TiOPF Frameworks de Persistência DePO Marcelo Santos Daibert

19 Frameworks de Persistência
Motivação Metodologia Contextualização Frameworks de Persistência Estudo de Caso Resultados Conclusão DePO IO TiOPF Frameworks de Persistência Manipulação de Objetos Persistir / Criar var Aluno: TAluno; begin Aluno:= TAluno.Create(dpoDBXMechanism); Aluno.Codigo:= '1'; Aluno.Nome:= 'José da Silva'; Aluno.Matricula:= ' '; Aluno.Save; end; Marcelo Santos Daibert

20 Frameworks de Persistência
Motivação Metodologia Contextualização Frameworks de Persistência Estudo de Caso Resultados Conclusão DePO IO TiOPF Frameworks de Persistência Manipulação de Objetos Recuperar var Aluno: TAluno; begin Aluno:= TAluno.Create(dpoDBXMechanism); Aluno.Codigo:= '1'; if not Aluno.Retrieve then MessageDlg('Aluno não existe', mtWarning, [mbOK], 0); end; Marcelo Santos Daibert

21 Frameworks de Persistência
Motivação Metodologia Contextualização Frameworks de Persistência Estudo de Caso Resultados Conclusão DePO IO TiOPF Frameworks de Persistência Manipulação de Objetos Atualizar var Aluno: TAluno; begin Aluno:= TAluno.Create(dpoDBXMechanism); Aluno.Codigo:= '1'; if Aluno.Retrieve then Aluno.Nome:= 'Joaquim Souza'; Aluno.Save; end; Marcelo Santos Daibert

22 Frameworks de Persistência
Motivação Metodologia Contextualização Frameworks de Persistência Estudo de Caso Resultados Conclusão DePO IO TiOPF Frameworks de Persistência Manipulação de Objetos Excluir var Aluno: TAluno; begin Aluno:= TAluno.Create(dpoDBXMechanism); Aluno.Codigo:= '1'; if Aluno.Retrieve then Aluno.Delete; Aluno.Save; end; Marcelo Santos Daibert

23 Frameworks de Persistência
Motivação Metodologia Contextualização Frameworks de Persistência Estudo de Caso Resultados Conclusão DePO IO TiOPF Frameworks de Persistência Instant Objects Marcelo Santos Daibert

24 Frameworks de Persistência
Motivação Metodologia Contextualização Frameworks de Persistência Estudo de Caso Resultados Conclusão DePO IO TiOPF Frameworks de Persistência Model Explorer Marcelo Santos Daibert

25 Marcelo Santos Daibert

26 Frameworks de Persistência
Motivação Metodologia Contextualização Frameworks de Persistência Estudo de Caso Resultados Conclusão DePO IO TiOPF Frameworks de Persistência Manipulação de Objetos Persistir / Criar var objAluno : TAluno; begin objAluno:=TAluno.Create(InstantDBXConnector); objAluno.Nome := 'José da Silva'; objAluno.Matricula := ; objAluno.Store(); end; Marcelo Santos Daibert

27 Frameworks de Persistência
Motivação Metodologia Contextualização Frameworks de Persistência Estudo de Caso Resultados Conclusão DePO IO TiOPF Frameworks de Persistência Manipulação de Objetos Recuperar var objAluno : TAluno; begin try objAluno:=TAluno.Retrieve('ID',false,false, InstantDBXConnector); except MessageDlg('Aluno não Existe', mtWarning, [mbOK], 0); end; Marcelo Santos Daibert

28 Frameworks de Persistência
Motivação Metodologia Contextualização Frameworks de Persistência Estudo de Caso Resultados Conclusão DePO IO TiOPF Frameworks de Persistência Manipulação de Objetos Atualizar var objAluno : TAluno; begin try objAluno:=TAluno.Retrieve('ID',false,false, InstantDBXConnector); objAluno.Nome := 'Joaquim Souza'; objAluno.Matricula := ; objAluno.Store(); except MessageDlg('Aluno não Existe', mtWarning, [mbOK], 0); end; Marcelo Santos Daibert

29 Frameworks de Persistência
Motivação Metodologia Contextualização Frameworks de Persistência Estudo de Caso Resultados Conclusão DePO IO TiOPF Frameworks de Persistência Manipulação de Objetos Excluir var objAluno : TAluno; begin try objAluno:=TAluno.Retrieve('ID',false,false, InstantDBXConnector); objAluno.Dispose(); except MessageDlg('Aluno não Existe', mtWarning, [mbOK], 0); end; Marcelo Santos Daibert

30 Frameworks de Persistência
Motivação Metodologia Contextualização Frameworks de Persistência Estudo de Caso Resultados Conclusão DePO IO TiOPF Frameworks de Persistência TiOPF Componentes Data-aware Marcelo Santos Daibert

31 Estudo de Caso: Acadêmico
Motivação Metodologia Contextualização Frameworks de Persistência Estudo de Caso Resultados Conclusão Estudo de Caso: Acadêmico Sistema de Controle Acadêmico Reengenharia (Estruturado -> Orientado a Objetos) Utilização de Padrões de Projeto Persistência de Objetos Utilização do framework de persistência objeto-relacional DePO (Delphi Persistent Objetcs) Marcelo Santos Daibert

32 Estudo de Caso: Acadêmico
Motivação Metodologia Contextualização Frameworks de Persistência Estudo de Caso Resultados Conclusão Estudo de Caso: Acadêmico Demo Marcelo Santos Daibert

33 Marcelo Santos Daibert
Motivação Metodologia Contextualização Frameworks de Persistência Estudo de Caso Resultados Conclusão Resultados Artigo “Persistência de Objetos no Delphi: Introdução ao DePO(Delphi Persistent Objects)” aceito na revista ClubeDelphi. Artigo “Persistência em Software Orientado a Objetos: Abordagens Utilizando Frameworks OpenSource” aceito para apresentação oral no III Encontro de Software Livre do Amazonas (ESLAM) em Manaus Apresentação do minicurso “Persistência de Objetos em Delphi – Introdução ao Framework DePO(Delphi Persistent Objects)” Marcelo Santos Daibert

34 Marcelo Santos Daibert
Motivação Metodologia Contextualização Frameworks de Persistência Estudo de Caso Resultados Conclusão Resultados Apresentação oral do workshop “Persistência em Software Orientado a Objetos: Abordagens Utilizando Frameworks OpenSource” no II Festival de Software Livre de Juiz de Fora (FESTSOL) Marcelo Santos Daibert

35 Marcelo Santos Daibert
Motivação Metodologia Contextualização Frameworks de Persistência Estudo de Caso Resultados Conclusão Considerações Finais Este trabalho buscou apresentar soluções opensource eficazes e eficientes para suprir as necessidades de desenvolvimento orientado a objetos, unindo: Maturidade, Confiança, Desempenho dos bancos de dados relacionais Trabalhos futuros: Estudo dos frameworks proprietários, como o ECO, ECO II, Bold. Marcelo Santos Daibert

36 Persistência em Software Orientado a Objetos:
Soluções de Mapeamento Objeto-Relacional Marcelo Santos Daibert Orientador: Marco Antônio Pereira Araújo Co-Orientadora: Alessandreia Marta de Oliveira Julio Marcelo Santos Daibert


Carregar ppt "Persistência em Software Orientado a Objetos:"

Apresentações semelhantes


Anúncios Google