Este trabalho mostra o desenvolvimento de uma Interface de Programação de Aplicativos (Application Program Interface - API) para um gerenciador de dados orientado a objetos. A API é composta por um conjunto de primitivas que integram a definição e a manipulação de objetos em uma representação compatível com uma linguagem de programação orientada a objetos. A definição da API explora os recursos básicos de modelos de dados orientados a objetos e baseia-se nas extensões de um metamodelo baseado em quatro abstrações: classificação, generalização, agregação e composição. O suporte à abstração de classificação com hierarquias em múltiplos níveis é tratado com especial destaque, pois resulta em uma das características predominantes da API: o tratamento homogêneo de tipos e instâncias em tempo de execução, unificando comandos usualmente separados em DDL (Data Definition Language) e DML (Data Manipulation Language). A implementação da API sobre um gerenciador relacional emula um gerenciador de dados orientado a objetos. Os conceitos envolvidos no trabalho de emulação foram aplicados no desenvolvimento de uma versão com núcleo relacional do Gerenciador de Objetos SIRIUS, criando em ambiente experimental, precursor à versão com núcleo nativo desse gerenciador. A API definida neste trabalho é compatível com ambas as versões do Gerenciador SIRIUS, permitindo que uma aplicação utilize qualquer uma das versões sem alterações em seu código fonte. Para exemplificar a utilização prática da API, foi implementado um utilitário de bases de dados destinado à representação de modelagens baseadas no modelo de dados SIRIUS usando a versão relacional do Gerenciador de Objetos SIRIUS. Esse utilitário, além de demonstrar a utilização da API, demonstra também como as operações típicas da DDL e da DML são integradas em um único conjunto de comandos que não faz diferença entre a definição de tipos e de instâncias.
Identifer | oai:union.ndltd.org:IBICT/oai:teses.usp.br:tde-01072003-163859 |
Date | 15 December 2000 |
Creators | Elaine Parros Machado de Sousa |
Contributors | Caetano Traina Junior, Mauro Biajiz, Rosely Sanches |
Publisher | Universidade de São Paulo, Ciências da Computação e Matemática Computacional, USP, BR |
Source Sets | IBICT Brazilian ETDs |
Language | Portuguese |
Detected Language | Portuguese |
Type | info:eu-repo/semantics/publishedVersion, info:eu-repo/semantics/masterThesis |
Source | reponame:Biblioteca Digital de Teses e Dissertações da USP, instname:Universidade de São Paulo, instacron:USP |
Rights | info:eu-repo/semantics/openAccess |
Page generated in 0.0015 seconds