Você está na página 1de 17

SISTEMA DE ENSINO PRESENCIAL CONECTADO

ANALISE E DESENVOLVIMENTO DE SISTEMAS DE INFORMAO

WANDERSON JONER SILVA CRUZ

FUNDAMENTOS DA INFORMAO:
Desenvolvimento orientado a objetos;
Redes de computadores;
Modelagem orientada a objetos

Braslia
2014

WANDERSON JONER SILVA CRUZ

FUNDAMENTOS DA INFORMAO:
Desenvolvimento orientado a objetos;
Redes de computadores;
Modelagem orientada a objetos

Trabalho de Fundamentos da Informao apresentado


Universidade Norte do Paran - UNOPAR, como
requisito parcial para a obteno de mdia semestral na
disciplina de Anlise de Desenvolvimentos de Sistemas
de Informao.
Orientador: Prof.

Braslia
2014

SUMRIO
2 INTRODUO.........................................................................................................................................3
3 OBJETIVO................................................................................................................3
4. DESENVOLVIMENTO.............................................................................................................................4
4.1

Pesquisa sobre Banco de Dados Orientados Objetos .......................4 7

4.1.1. Descreva sua aplicao e seu mecanismo de funcionamento....................7 8


4.1.2. Qual a diferena entre banco de dados orientado a objeto e banco de dados
relacional...........................................................................................8 13
4.2.
4.2.1

Pesquise sobre ORM Mapeamento Objeto Relacional.........................13 14


Como desenvolver utilizando o modelo orientado a objetos com um banco de dados
relacional.............................................................................................14

4.2.2. O que ORM e para que utilizado..................................................................14

4.2.3. Quais ferramentas esto disponveis hoje no mercado.......................15


4.2.4. Quais a vantagens e desvantagens de se usar uma ferramenta ORM..........15

5. CONCLUSO.......................................................................................... .16
6. ANEXOS......................................................................................................16 17
7. Biliografia ............................................................................................................17

3
2

INTRODUO
No contexto abaixo Abordaremos os seguintes assuntos banco de dados orientado a objeto

onde falaremos sobre as suas aplicaes e seu mecanismo de funcionamento e buscando saber as
diferena entre banco de dados orientado a objeto e banco de dados relacional tambm abordaremos
ORM (object relational mapper)- mapeamento objeto relacional e como desenvolver utilizando o modelo
orientado a objeto com banco de dados relacional e, para que utilizado o ORM nos preocupando
como saber quais sos as vantagens e desvantagens de se usar uma ferramenta ORM e as
ferramentas disponvel no mercado.

3. OBJETIVO
Tenho como objetivo me especializar de maneira que venho a conseguir suprir o mercado
com minha especializao oferecendo uma melhor maneira para desenvolver software de boa
qualidade. Visando atender o mercado de software e possibilitando melhor desempenho e automao
nas empresas onde o projeto for desenvolvido.

4
4.

DESENVOLVIMENTO
4.1

Pesquisa sobre Banco de Dados Orientados Objetos Seo Primria


Banco de dados orientado a objetos

Um banco de dados orientado a objetos um banco de dados em que cada informao


armazenada na forma de objetos, ou seja, utiliza a Estrutura de dados denominada Orientao a
objetos, a qual permeia as linguagens mais modernas. O gerenciador do banco de dados para um
orientado a objeto referenciado por vrios como ODBMS ou OODBMS.
Existem dois fatores principais que levam a adoo da tecnologia de banco de dados
orientados a objetos. A primeira, que em um banco de dados relacional se torna difcil de manipular
com dados complexos (esta dificuldade se d pois o modelo relacional se baseia menos no senso
comum relativo ao modelo de dados necessrio ao projeto e mais nas contingncias prticas do
armazenamento eletrnico). Segundo, os dados so geralmente manipulados pela aplicao escrita
usando linguagens de programao orientada a objetos, como C++, C#, Java,Python ou Delphi (Object
Pascal), e o cdigo precisa ser traduzido entre a representao do dado e as tuplas da tabela
relacional, o que alm de ser uma operao tediosa de ser escrita, consome tempo. Esta perda entre
os modelos usados para representar a informao na aplicao e no banco de dados tambm
chamada de perda por resistncia.
HISTRIA
Os sistemas de gerenciamento de banco de dados orientado a objetos cresceram fora das
pesquisas durante o comeo da metade dos anos 80, buscando ter sustentao intrnseca da gerncia
da base de dados para objetos grfico-estruturados. O termo sistema de banco de dados orientado a
objetos surgiu originalmente por volta de 1985. Projetos de pesquisa notveis incluem EncoreOb/Server (Brown University), EXODUS (University of Wisconsin), IRIS (Hewlett-Packard), ODE (Bell
Labs), ORION (Microelectronics and Computer Technology Corporation or MCC), Vodak (GMD-IPSI), e
Zeitgeist (Texas Instruments). O projeto ORION teve mais artigos publicados do que qualquer outro.
Won Kim, do MCC, compilou os melhores destes artigos num livro publicado pelo MIT Press.
Surgiram produtos comerciais, como o GemStone (Servio Logic, alterado para GemStone
Systems), Gbase (Graphael), e Vbase (Ontologic). No comeo da metade dos anos 90 vimos novos
produtos comerciais entrarem no mercado. Deste inclui-se ITASCA (Itasca Systems), Matisse (Matisse
Software), Objectivity/DB (Objectivity, Inc.), ObjectStore (Progress Software, adquirido pela eXcelon, a
qual era originalmente Object Design), ONTOS (Ontos, Inc., alterado para Ontologic), O 22 (O2
Technology, surgiu de vrias companhias, adquirido pela Informix, qual por sua vez foi adquirida pela
IBM), POET (agora da FastObjects da Versant que adquiriu a Poet Systems), e Versant Object
Database (Versant Corporation). Alguns destes produtos se mantem no mercado, tendo alguns se
unido com novos produtos.
Os Sistema de Gerenciamento de Banco de Dados Orientados a Objetos adicionaram o
conceito de persistncia programao orientada a objetos. No incio os produtos comerciais eram
integrados com vrias linguagens GemStone (Smalltalk), Gbase (Lisp), e Vbase (COP). O COP era o C
Object Processor, uma linguagem proprietria baseada no C ( COP diferente de C++. Apesar de

5
ambas terem C como base C++ tambm foi influenciada Pela Simula). Durante praticamente todos os
anos 90, o C++ dominou o mercado comercial de Gerenciadores de Banco de Dados Orientados a
Objetos. Os vendedores acrescentaram o Java no final dos anos 90 e mais recentemente o C#.
RECURSOS TCNICOS
Num banco de dados orientado a objetos puro, os dados so armazenados como objetos
onde s podem ser manipulados pelos mtodos definidos pela classe de que estes objetos pertencem.
Os objetos so organizados numa hierarquia de tipos e subtipos que recebem as caractersticas de
seus supertipos. Os objetos podem conter referncias para outros objetos, e as aplicaes podem
conseqentemente acessar os dados requeridos usando um estilo de navegao de programao.
A maioria dos bancos de dados tambm oferecem algum tipo de linguagem de consulta,
permitindo que os objetos sejam localizados por uma programao declarativa mais prxima. Isto , na
rea das linguagens de consulta orientada a objetos. A integrao da consulta com a interface de
navegao faz a grande diferena entre os produtos que so encontrados. Uma tentativa de
padronizao foi feita pela ODMG (Object Data Management Group) com a OQL (Object Query
Language).
O acesso aos dados pode ser rpido porque as junes geralmente no so necessrias
(como numa implementao tabular de uma base de dados relacional), isto , porque um objeto pode
ser obtido diretamente sem busca, seguindo os ponteiros.
Outra rea de variao entre os produtos o modo que este schema do banco de dados
definido. Uma caracterstica geral, entretanto, que a linguagem de programao e o schema do
banco de dados usam o mesmo modo de definio de tipos.
Aplicaes multimdia so facilitadas porque os mtodos de classe associados com os dados
so responsvel pela correta reproduo.
Muitos bancos de dados orientados a objetos oferecem suporte a verses. Um objeto pode
ser visto de todas as vrias verses. Ainda, verses de objetos podem ser tratadas como objetos na
verso correta. Alguns bancos de dados orientados a objetos ainda provem um suporte sistemtico a
triggers e constraints que so as bases dos bancos ativos.
VANTAGENS E DESVANTAGENS
Benchmarks entre ODBMSs e relacionais DBMSs tem mostrado que ODBMS podem ser
claramente superiores para certos tipos de tarefas. A principal razo para isto que vrias operaes
so feitas utilizando interfaces navegacionais ao invs das relacionais, e o acesso navegacional
geralmente implementado de forma muito eficiente por ponteiros.
Crticos das tecnologias baseadas em Bancos de Dados Navegacionais, como os ODBMS,
sugerem que as tcnicas baseadas em ponteiros so otimizadas para rotas de pesquisa ou pontos de
vista muito especficos. Entretanto, para o propsito de consultas gerais a mesma informao, tcnicas
baseadas em ponteiros tendero a ser mais lentas e mais difceis de formular do que as relacionais.
Desta maneira, a abordagem navegacional parece simplificar para usos dos especficos conhecidos s
custas do uso geral, ignorando usos futuros.

6
Outra coisa que trabalha contra os ODBMS parece ser a perda da interoperabilidade com um
grande nmero de ferramentas/caractersticas que so tidas como certas no mundo SQL, incluindo a
indstria de padres de conectividade, ferramentas de relatrio, ferramentas de OLAP e backup, e
padres de recuperao. Adicionalmente, banco de dados orientado a objetos perdem o fundamento
formal matemtico, ao contrrio do modelo relacional, e isto s vezes conduz a fraqueza na
sustentao da consulta. Entretanto esta objeo descartada pelo fato que alguns ODBMSs
suportam totalmente o SQL em adio ao acesso navegacional (Objectivity/SQL++). Mas, o uso eficaz
pode requerer acordos para manter ambos os paradigmas sincronizados.
De fato h uma tenso intrnseca entre a noo de encapsulamento, que esconde os dados e
somente os disponibiliza atravs de uma interface de mtodos publicados, e o presuposto de muitas
tecnologias de bancos de dados, de que estes dados podem ser acessados por consultas baseadas
em seu contedo ao invs de caminhos predefinidos. O pensamento centrado em bancos de dados
tende a ver o mundo atravs de forma declarativa e dirigida a uma viso de atributos, enquanto a OOP
tenta ver o mundo atravs um ponto de vista comportamental. Esta uma das vrias perdas por
resistncia que envolvem OOP e banco de dados.
Embora alguns afirmem que a tecnologia de banco de dados orientado a objetos fracassou,
os argumentos essenciais em seu favor permanecem vlidos, e as tentativas de integrar as
funcionalidades de bancos de dados mais prximas s linguagens de programao orientadas a objeto
continuam tanto nas comunidades de pesquisa quanto nas industriais.
ODMG
O ODMG (Object Database Management Group) era um consrcio de vendedores de banco
de dados orientados a objetos e mapeadores objeto-relacionais, membros da comunidade acadmica,
e parceiros interessados. A meta era criar um conjunto de especificaes que permitiriam a
portabilidade das aplicaes que armazenam objetos em sistemas de gerenciamento de banco de
dados. Foram publicadas vrias verses desta especificao. O ltimo release foi a ODMG 3.0. Em
2001, a maioria dos principais vendedores de banco de dados orientado a objetos e mapeadores de
objeto-relacionais reivindicaram a conformidade com a ODMG Java Language Binding. A conformidade
com os demais componentes da especificao foi variada. Em 2001, o ODMG Java Language Binding
foi submetido para o Java Community Process como base para a especificao Java Data Objects. As
companhias membras do ODMG decidiram ento concentrar esforos na especificao do Java Data
Objects. Como resultado, a ODMG se dissolveu em 2001.
Vrias ideias do banco de dados orientado a objetos foram absorvidas pela SQL:1999 e tem
sido implementadas em vrios graus nos produtos de banco de dados objeto-relacional.
Em 2005 Cook, Rai e Rosenberger propuseram abandonar todos os esforos de
padronizao para introduzir APIs adicionais de consulta orientadas a objetos e, ao invs disso, usar as
prprias linguagens orientadas a objetos, como o JAVA e o .NET. Como resultado surgiram as
Consultas Nativas (Native Queries). Similarmente, a Microsoft anunciou a LINQ (Language Integrated
Query) e DLINQ, uma implementao do LINQ, em setembro de 2005, para prover a aproximao da
capacidade da linguagem de consulta integrada do banco de dados com as linguagens de
programao C# e VB.NET 9.
Em fevereiro de 2006, o OMG (Object Management Group) anunciou que havia concedido o
direito de desenvolver novas especificaes baseadas na especificao ODMG 3.0 e a formao do

7
ODBT WG (Object Database Technology Working Group). O ODBT WG planeja criar um conjunto de
especificaes que incorporar avanos da tecnologia de banco de dados orientados a objetos (ex.
replicao), gerenciamento de dados (ex. indexao espacial) e formato de dados (ex. XML) e incluir
novas caractersticas dentro deste padro que dar suporte ao dominios onde os bancos de dados
orientados a objeto esto sendo adotadas (ex. sistemas de Tempo real).
4.1.1. DESCREVA SUA APLICAO E SEU MECANISMO DE FUNCIONAMENTO.

Temos que fazer a ligao entre o banco de dados e a aplicao.


E uma aplicao feita atravs da necessidade de conecta o banco de dado a uma aplicao
por tanto os programadores preciso fazerem aplicaes precisas para conversamos com esses
dados, as aplicaes preciso ter mecanismo para toda a hierarquia do projeto da empresa. E os
banco de dados para essas aplicaes devem ser projetados bem detalhadamente, verificando cada
etapa utilizando o mecanismo de classificao, relacionamento, normatizao e etc. que visam
integridade e confiabilidade dos dados.
Um exemplo comum de aplicao de um banco de dado e o da web, comercio eletrnico, o
cliente ao se cadastra no site o sistema pede informaes sobre seus dados pessoais e depois voc
pode fazer suas compra esses produtos ficam armazenado em um banco de dados da empresa ate
serem utilizados para escolha e postagem do produto. Ou seja grava seu dados pessoas e endereo
para postagem do produto desejado.
4.1.2 QUAL A DIFERENA ENTRE BANCO DE DADOS ORIENTADO A OBJETO E BANCO DE
DADOS RELACIONAL
A diferena entre banco de dados orientado a objeto e relacional que a conexo ocorre
atravs de ponteira e referencias enquanto as relaes so unidas atravs de produtos cartesianos e
chaves estrangeiras, o que leva a solues de otimizao diferentes para os dois casos. A
implementao orientada a objeto entende que a informao acessvel de maneira idntica.
A necessidade de manipulao e armazenamento de dados complexos vem
crescendo rapidamente com o passar do tempo. Essa necessidade fez com que o
paradigma orientado a objetos fosse agregado aos Sistemas Gerenciadores de Banco de Dados
(SGBDs). As informaes complexas, como grficos, imagens, udio, vdeo, mapas, entre outros,
requerem funcionalidades que vo alm do que o modelo relacional de banco de dados pode oferecer.
Por essa razo, surgiu o modelo de banco de dados orientado a objetos, que traz muitos benefcios em
relao ao banco dedados relacional, pela sua produtividade ao agregar a orientao a objetos ao
banco dedados. Entretanto, por ser um modelo jovem e imaturo que carece de mais estudo e
desenvolvimento, suas operaes so lentas quando comparadas com os bancos dedados relacionais
existentes. Por essa razo, foi desenvolvido o banco de dados objeto relacional, o qual agrega
caractersticas de ambos os bancos, o BDOO e o BDR, possuindo assim caractersticas da orientao
a objetos combinada com tecnologia relacional que domina o mercado e funciona perfeitamente, seja
no desempenho ou na confiabilidade do SGBD.
Este artigo apresentar caractersticas dos BDOO e DBOR, com uma comparao das
vantagens e desvantagens dos dois modelos.

8
Banco de Dados Orientado a Objetos
Os Banco de Dados Orientado a Objetos sugiram da necessidade de armazenar dados
complexos e de acabar com a disparidade que havia na modelagem da aplicao e do Banco de
Dados (BD). Com o advento das linguagens de programao orientadas a objetos, os programadores
passaram a utilizar este paradigma e a modelagem ento naturalmente passou tambm a seguir este
modelo. O outro ponto que objetos complexos precisam ser quebrados em diversas tabelas, ou
relaes, para serem armazenados e com isto para recuperar tal informao preciso realizar um JOIN
entre diversas tabelas.
Com a orientao a objetos, possvel modelar objetos de forma mais prxima ao mundo
real, como por exemplo, em um sistema de geoprocessamento, engenharia, pesquisa cientfica e
tantos outros sistemas no triviais. Um Bando de Dados Orientado a Objetos BDOO permite ainda
que a aplicao manipule objetos, independente se eles so persistentes ou no, pois possvel
armazenar todo o objeto e no apenas seus atributos.
Diferentemente do modelo Relacional, o BDOO no utiliza o conceito de chave primria ou
secundria. As chaves foram substitudas pelo identificador de objeto (OID Objetct Identifier), que
controlado pelo prprio SGBD Sistema
Gerenciador de Banco de Dados e no visvel ao usurio do Banco de Dados. O
OID pode ser visto como uma referncia ao objeto em memria, assemelhando-se a
um ponteiro, porm um OID nunca alterado e nem reaproveitado, diferentemente do que acontece
quando o objeto est em memria, onde utilizado o endereo fsico da memria RAM (Random
Access Memory). Apesar da caracterstica mencionada, possvel criar campos como chave para
facilitar a identificao dos objetos armazenados por parte do usurio.
Orientao a Objetos
A orientao a objetos fornece recursos como encapsulamento, herana,
polimorfismo e sobrecarga que sero rapidamente explicados.
Segundo Elmasri e Navathe, o conceito de encapsulamento uma das principais
caractersticas das linguagens e dos sistemas OO. Ele est relacionado tambm com os conceitos de
tipos abstratos de dados e ocultar a informao nas linguagens de programao. Encapsular dados
significa que as variveis sero acessadas por mtodos definidos em sua estrutura. Uma vantagem
poder ocultar a complexidade na manipulao do objeto por meio das operaes disponibilizadas de tal
forma que aumenta a segurana e produtividade.
Herana o mecanismo pelo qual a linguagem de programao orientada a objetos (LPOO)
fornece a possibilidade do reaproveitamento de cdigo. possvel uma classe herdar os mtodos e
atributos de outra classe chamada superclasse ou classe me e assim estender a classe me.
O polimorfismo a capacidade que um objeto tem de ora se comportar de uma maneira, ora
de outra. Considere as classes as classes Pessoa, Funcionrio e Aluno.
Com uma varivel do tipo Pessoa, possvel utiliz-la para representar um objeto do tipo
Pessoa, mas tambm objetos do tipo Funcionrio e Aluno.
O polimorfismo d a possibilidade da sobrecarga de operadores, no qual subclasses podem
modificar a implementao de um mtodo definido na superclasse.

9
Considerando o exemplo anterior e que cada classe tenha um mtodo chamado Remover,
para remover uma pessoa basta apenas excluir o seu registro, j para um aluno preciso verificar se o
mesmo no possui nenhuma pendncia na organizao, excluir o aluno das disciplinas que est
matriculado e por fim alterar o seu estado. J para um funcionrio preciso remover o acesso s
informaes da instituio, calcular e pagar a indenizao caso se aplique e alterar o estado do
funcionrio.
Percebe-se que cada classe tem a sua prpria implementao, apesar de
compartilharem o mesmo nome do mtodo.
Padro ODMG O sucesso dos sistemas de banco de dados relacionais no resulta apenas
de um nvel mais alto de independncia de dados e um modelo de dados mais simples do que os
sistemas anteriores. Seu sucesso se deve tambm padronizao que sofreram. A aceitao do
padro SQL permite o alto grau de portabilidade e interoperabilidade... Portabilidade a capacidade de
executar um programa de aplicao particular em diferentes sistemas com modificaes mnimas no
programa. (Vieira, 2001) Interoperabilidade se refere habilidade de uma aplicao acessar mltiplos
SGDBs distintos.O padro ODGM (Object Database Management Group) se baseia em:
Modelo de Objetos;
Linguagem de Definio de Objetos (ODL);
Linguagem de Consulta a Objetos (OQL);
Acoplamento (binding);
Elmasri e Navathe, 2005, dizem que o modelo de objetos fornece os tipos de
dados, os construtores de tipos e outros conceitos que podem ser utilizados na ODL
para especificar esquemas de BDs. O modelo define objetos e literais no qual os
objetos possuem um OID e um estado, ou valor atual, j as literais possuem apenas
um valor sendo basicamente uma constante. Tanto os objetos como as literais podem ser do tipo
atmico, coleo ou estruturado.
A linguagem ODL usada para criar a definio dos tipos de objetos, por isso devesuportar
todos os construtores semnticos do Modelo de Objetos. apenas umalinguagem de definio e
independente de qualquer linguagem de programao, sendo utilizado o binding para a LPOO
especfica.
A OQL uma linguagem declarativa no procedural que pode ser utilizada dentro linguagens
de programao. A OQL baseada na SQL, adicionando conceitos do padro ODMG como OID,
objetos complexos, herana, polimorfismo,
relacionamento e operaes.
O binding, ou acoplamento, especifica como as estruturas em ODL so mapeadas para
estruturas na LPOO escolhida, como C# por exemplo. o binding que converte o objeto do BD para a
aplicao.
Banco de Dados Objeto Relacional
Com a evoluo dos paradigmas de programao e a gradativa manipulao de dados
complexos, houve a necessidade da evoluo dos SGDBs de forma a
acompanhar e atender as exigncias requisitadas. Dessa evoluo nascem os SGBDOO, os SGBDOR
e evolues nos SGBDR.

10
Analisando de forma sucinta o SGBDOO, temos respectivamente um banco que facilita a
aproximao do mundo real, devido a trabalhar com orientao a objetos e suas caractersticas
(herana, encapsulamento, abstrao, polimorfismo), um banco que permite a manipulao de dados
complexos, mesmo com desempenho inferior ao relacional e que possui um pobre nvel nas consultas
dos dados. Continuando a analise s que de um SGBDR, temos um banco que atua a um bom tempo
no mercado pelo fato de se ter anos de desenvolvimento, investimentos e aperfeioamentos, um banco
com desempenho superior aos SGBDOO, um SGBD que apresenta ricas consultas e que possui
dificuldade em manipular dados complexos.
Como podemos notar no pargrafo acima temos em cada tipo de SGBD citado, vantagens e
desvantagens nos mesmos. Ento se notou a carncia de um SGBD que tivesse a capacidade de
manipular dados complexos, que se adequasse ao paradigma de programao atual (orientao a
objetos), que tivesse bom desempenho e que demonstrasse ricas consultas de dados. a partir
dessas vantagens de cada SGBD que se fundamenta o SGBDOR.
O SGBDOR emprega um modelo que coloca a orientao a objetos em tabelas, unindo os
dois paradigmas em um s. Utiliza os conceitos de supertabelas, supertipos, herana, reutilizao de
cdigo, encapsulamento, controle de identidade de objetos (OID), referncia a objetos, consultas
avanadas e alta proteo dos dados.
Com esse novo conceito surgiu necessidade de uma linguagem padro para o uso com o
SGBDOR. a partir da que nasce o SQL-3, que na verdade uma extenso do SQL-2
complementado com caractersticas do modelo objeto-relacional.
Alguns exemplos de aplicaes que utilizam SGBDOR so os seguintes:
armazenamento de imagens (obtidas por satlite ou de alguma outra forma digital);
projetos de arquitetura; dados sobre o espao (regies geogrficas, criao de mapas), sistemas de
informaes geoespaciais, entre outros.
Apesar de ser um conceito relativamente novo no mundo da tecnologia de banco de dados, o
SGBDOR tem sido uma das promessas capaz de substituir o SGBDR e o SGBDOO. O fato de obter o
melhor do SGBDOO e do SGBDR faz tender que seja o modelo de banco de dados ideal para
atender as necessidades atuais.
Padro SQL3 ou SQL99
Assim como o SGBDOO e SGBDR possuem padres de linguagem de consulta, com a
evoluo do conceito objeto relacional ocorreu necessidade da criao de mais um padro para
manipular o mesmo, findando assim a criao do padro SQL3 ou SQL99.
Criado em 1999 com o intuito de propor interao entre o banco de dados e
aplicaes orientadas a objetos de forma mais natural, inclui novos tipos de dados,
novos operadores, suporte para a noo de objeto (OIDs, mtodos, tipos de dados
estruturados definidos pelo usurio e etc.), consultas recursivas, triggers, navegao
pela estrutura dos objetos, chamada de mtodos (na prpria formulao da consulta) e etc. Nele,
representamos objetos como linhas (ROW) que definem uma tupla em
forma de registro. Diferente do modelo relacional, onde cada atributo possui valores.
atmicos, pode ocorrer de objetos posuirem outros objetos ou de mais de um registro, caracterizando o
conceito de relao aninhada, onde os atributos podem ser constitudos de outras relaes e no
apenas de valores atmicos.

11
Um conjunto de novos operadores pode ser encontrado no SQL3, alguns deles so os
seguintes: Set, Cast-Multiset, Cursor, Bag, List, Array, Row.
Outro ponto que vale ressaltar o uso do tipo de dado LOB, utilizado para dados muito
grandes como vdeos, msica e etc. Possui dois subtipos que so o CLOB (Character LOB) e BLOB
(Binary LOB).
Enfim, um conjunto de outras utilidades pode ser encontrado na linguagem SQL3 ou SQL99
de modo a facilitar o uso do SGBDOR de forma eficiente e padronizada.
Comparao BDOO x BDOR
Como j apresentado, os Banco de Dados Orientado a Objetos (BDOO) sugiram da
necessidade de armazenar dados complexos e de acabar com a disparidade que havia na modelagem
da aplicao e do Banco de Dados (BD). Logo, as vantagens do BDOO vieram rapidamente tona:
possui uma abordagem flexvel, facilidade de manusear objetos complexos, trabalha com noes de
objetos, classes, relacionamento e identidade de objetos.
Entretanto, logo foram percebidas suas limitaes, principalmente a relacionada ao
desempenho quando comparado com o Banco de Dados Relacional (BDR) e a falta de fundamentao
matemtica, o que dificulta realizar consultas complexas. Por conta, principalmente destas limitaes,
foi desenvolvido do Banco de Dados Objeto Relacional (BDOR). Este apresenta diversas vantagens em
relao ao BDOO e ao BDR. Em poucas palavras, pode-se dizer que o BDOR surgiu para agregar as
vantagens da orientao a objetos (herana, polimorfismo, encapsulamento, abstrao) que h no
BDOO, juntamente com o alto desempenho, eficincia e maturidade do BDR.
O armazenamento de dados, tanto em BDOO, quanto em BDOR, se torna relativamente
simples, uma vez que em ambos os bancos oferecem suporte a dados complexos. Entretanto, a
principal vantagem do BDOR a capacidade manipular dados complexos, persistentes e ao mesmo
tempo manter a facilidade de uso dos mtodos de consulta do SQL3.
O BDOO possui um modelo rico de dados, ou seja, possui representao de objetos
complexos, extensvel (oferece suporte para novos tipos de dados capazes de operar no objeto),
ofereo suporte ocultao da informao e herana. Seu ponto fraco seu baixo desempenho, uma
vez que sua otimizao de consultas bastante complexa, logo perdido um tempo precioso neste
processo. O BDOR oferece todas as caractersticas citadas no pargrafo anterior, exceto a do baixo
desempenho. O BDOR possui uma otimizao de consulta mais simples, e consequentemente, no
perde tanto desempenho quanto o BDOO.
Com relao ao mercado, o BDOO voltado para aplicaes de pequena escala, por
questes de desempenho. J o BDOR busca alcanar aplicaes de larga escala, a qual atualmente
dominada pelos BDR.
Concluso
A orientao a objetos a tendncia seja qual for a situao, o seu dilema o fato da perda de
desempenho. Assim como primeiras linguagens de programao onde tudo era um objeto, os BDOOs
sofrem com o desempenho. Quando s existia o BDR, apareceu a necessidade de armazenar dados
complexos, uma tima soluo foi o BDOO, entretanto, por seu desempenho no satisfatrio, um outro
banco foi desenvolvido, o BDOR, que agrega caractersticas da orientao a objetos e otimizao do

12
BDR. O modelo objeto relacional pode ser comparado s linguagens de programao atuais, onde
apenas dados complexos so representados como objetos, tendo assim maior desempenho.
O BDOR ainda no alcanou aplicaes de larga escala, pois se trata de um banco
relativamente novo, mas como suas vantagens esto se tornando cada vez mais evidentes, a
tendncia que as empresas e aplicaes que manipulam dados
complexos comecem a utilizar o BDOR e no futuro este modelo de banco de dados
tome o lugar do tradicional BDR.

4.2 ORM (Object-Relational Mapping) Seo quartenria


Um ORM (Object-Relational Mapping), nada mais do que um Framework ou um conjunto
de classes que permite que voc faa este trabalho sem precisar escrever cdigos de conexo com o
banco, querys de SQL a todo o momento, preservando as caractersticas de orientao a objetos da
linguagem face natureza relacional dos bancos de dados atuais.
O Mapeamento objeto-relacional (ou ORM, do ingls: Object-relational mapping) uma
tcnica de desenvolvimento utilizada para reduzir a impedncia da programao orientada aos objetos
utilizando bancos de dados relacionais. As tabelas do banco de dados so representadas atravs de
classes e os registros de cada tabela so representados como instncias das classes correspondentes.
Com esta tcnica, o programador no precisa se preocupar com os comandos em linguagem
SQL; ele ir usar uma interface de programao simples que faz todo o trabalho de persistncia.
No necessria uma correspondncia direta entre as tabelas de dados e as classes do
programa. A relao entre as tabelas onde originam os dados e o objecto que os disponibiliza
configurada pelo programador, isolando o cdigo do programa das alteraes organizao dos dados
nas tabelas do banco de dados.
A forma como este mapeamento configurado depende da ferramenta que estamos a usar.
Como exemplo, o programador que use Hibernate na linguagem Java pode usar arquivos XML ou o
sistema de anotaes que a linguagem providencia.
4.2.1. COMO DESENVOLVER UTILIZANDO O MODELO ORIENTADO A OBJETOS COM UM BANCO DE
DADOS RELACIONAL

Para desenvolver utilizando o modelo orientado a objeto com o banco de dado racional o
programador no precisa se preocupar com os comandos SQL; ele ir usar uma interface de
programao simples que faz todo o trabalho de persistncia.
No necessria uma ligao direta entre as tabelas de dados e as classes do programa. A
relao entre as tabelas onde originam os dados e o objeto que os disponibiliza configurada pelo
programador, isolando o cdigo do programa das alteraes organizao dos dados nas tabelas do
banco de dados.
4.2.2. O QUE ORM E PARA QUE UTILIZADO.
Um ORM (Object-Relational Mapping), nada mais do que um Framework ou um conjunto de
classes que permite que voc faa este trabalho sem precisar escrever cdigos de conexo com o

13
banco, querys de SQL a todo momento, preservando as caractersticas de orientao a objetos da
linguagem face natureza relacional dos bancos de dados atuais.
O Mapeamento objeto-relacional (ou ORM, do ingls: Object-relational mapping) uma
tcnica de desenvolvimento utilizada para reduzir a impedncia da programao orientada aos objetos
utilizando bancos de dados relacionais. As tabelas do banco de dados so representadas atravs de
classes e os registros de cada tabela so representados como instncias das classes correspondentes.
Com esta tcnica, o programador no precisa se preocupar com os comandos em linguagem
SQL; ele ir usar uma interface de programao simples que faz todo o trabalho de persistncia.
No necessria uma correspondncia direta entre as tabelas de dados e as classes do
programa. A relao entre as tabelas onde originam os dados e o objecto que os disponibiliza
configurada pelo programador, isolando o cdigo do programa das alteraes organizao dos dados
nas tabelas do banco de dados.
A forma como este mapeamento configurado depende da ferramenta que estamos a usar.
Como exemplo, o programador que use Hibernate na linguagem Java pode usar arquivos XML ou o
sistema de anotaes que a linguagem providencia.

4.2.3. QUAIS FERRAMENTAS ESTO DISPONVEIS HOJE NO MERCADO.

Gentle.NET:
o CARACTERSTICAS: Persistncia, Querys, Cache,

Relacionamento;

MyGeneration:
o CARACTERSTICAS: Gerador de cdigo baseado em templates e banco de
dados. Os recursos dependem dos templates;

Subsonic:
o CARACTERSTICAS: Persistncia, Colees, Suporte a alguns bancos, Querys,
Configurao rpida, Releases rpidos;

NHibernate:
o CARACTERSTICAS: Persistncia, Herana, Relacionamento, Querys, Suporte a
vrios bancos, Transaes e muito mais;

CODUS:
o CARACTERSTICAS: Persistncia, Herana, Relacionamento, Suporte a vrios
bancos,
Querys,
NUnit,
WebServices,
Colees,
Suporte
a

14
Nhibernate/Ibatis,Gentle.

ObjectMapper:
o CARACTERSTICAS:IDE UML que mapeia para o ORM (Npersist e Nhibernate).

4.2.4. QUAIS A VANTAGENS E DESVANTAGENS DE SE USAR UMA FERRAMENTA ORM.


As vantagem de se usa o Mapeamento objecto-relacional ou objeto - relacional por que

uma tcnica de desenvolvimento utilizada para reduzir a impedncia da programao orientada aos
objetos utilizando bancos de dados relacionais. A desvantagem o mecanismo de armazenamento e
recuperao de dados mais comumente utilizado - o Banco de Dados Relacional - no foi projetado
para interagir diretamente com o paradigma OO e com suas particularidades.

5. CONCLUSO
Esse trabalho foi feito com o propsito de mostra meu aprendizado e abstrair boas lies e
tambm tive a oportunidade de desenvolver mais meus conhecimentos atravs das pesquisas que fiz
em relao ao assunto abordado abstrair boas lies sobres banco de dados orientado a objeto e o
relacional suas diferena e como trabalhar com os dois e tambm sobre a ferramenta ORM como
desenvolver com o modelo orientado a objeto suas vantagens e desvantagem e com tudo isso tive um
bom aprendizado.

6. ANEXOS

15
EXEMPLO DE GRFICO

7. REFERNCIAS BIBLIOGRFICAS.

16
Wikipdia enciclopdia livre Banco de Dados Orientados Objetos seu endereo eletrnico est
disponvel em http://pt.wikipedia.org/wiki/Banco_de_dados_orientado_a_objetos
Anlise dos melhores ORM (Object-Relational Mapping) para plataforma .NET endereo eletrnico est
disponvel em http://www.devmedia.com.br/analise-dos-melhores-orm-object-relational-mapping-paraplataforma-net/5548#ixzz2vhR8gjZX
Trabalhos Gratuitos postado por Janderson estudante de Tecnologia, endereo eletrnico disponvel
em http://trabalhosgratuitos.com/Tecnologia/Janderson/148709.html
Teses Capitulo 3, endereo eletrnico disponvel em http://www.dpi.inpe.br/teses/thome/cap3.pdf
Leandro Gyn Professor de Modelagem Orientada a Objetos, endereo eletrnico disponvel em
http://pt.slideshare.net/leandrogynprof/aula1-modelagem-de-sistemas-orientada-a-objetos
Andr Maus Brabo Pereira Departamento de Engenharia Civil, endereo eletrnico disponvel em
http://www.tecgraf.puc-rio.br/ftp_pub/lfm/CIV2802-131-Aula04-ModelagemOrientadaObjetos.pdf

Você também pode gostar