SlideServe
Menu
Préférences
© SlideServe · v2026

OBJECT ORIENTED DATABASE

sheera avatar
13 diapositives · 273 Views · Sep 18, 2014

OBJECT ORIENTED DATABASE. introduzione. OGGETTO. Ha due componenti: stato : valore di alcune variabili (variabili di istanza) comportamento : insieme delle operazioni mediante le quali è possibile operare sull’oggetto. ODBMS vs OOPL. oggetti persistenti

OBJECT ORIENTED DATABASE - slide 1
01 / 13OBJECT ORIENTED DATABASE
1 / 17

Télécharger la présentation

OBJECT ORIENTED DATABASE
Une image / un lien ci-dessous est fourni (tel quel) pour télécharger la présentation

Politique de téléchargement : le contenu du site vous est fourni TEL QUEL pour votre information et votre usage personnel ; il ne peut être vendu, concédé sous licence ni partagé sur d’autres sites sans l’accord de son auteur.Le contenu vous est fourni TEL QUEL, pour votre information et votre usage personnel uniquement. Téléchargez la présentation en cliquant sur ce lien. Lors du téléchargement, si vous ne parvenez pas à télécharger une présentation, l’éditeur a peut-être supprimé le fichier de son serveur.Pendant le téléchargement, si vous ne parvenez pas à obtenir une présentation, le fichier a peut-être été supprimé par l’éditeur.

F I N

Plus de contenu associé

Transcription de la présentation
  1. OBJECT ORIENTED DATABASE introduzione

  2. OGGETTO Ha due componenti: • stato: valore di alcune variabili (variabili di istanza) • comportamento: insieme delle operazioni mediante le quali è possibile operare sull’oggetto

  3. ODBMS vs OOPL • oggetti persistenti continuano ad esistere (su memoria di massa) anche dopo la terminazione del programma che li ha creati e possono essere condivisi da più programmi • non completo incapsulamentodegli oggetti le variabili di istanza sono visibili per consentire interrogazioni estemporanee

  4. ODBMS vs DBMS RELAZIONALI • Corrispondenza 1:1 tra oggetti reali e oggetti memorizzati: ad ogni oggetto è assegnato dal sistema un OID (object identifier) • immutabile • non riutilizzabile • non visibile all’utente • utilizzato dal sistema per creare e gestire associazioni tra oggetti

  5. ODBMS vs DBMS RELAZIONALI • Un oggetto può avere una struttura di complessità arbitraria

  6. STATO DI UN OGGETTO Lo stato (valore) di un oggetto complesso è costruito a partire da altri oggetti/valori mediante costruttori di tipo (che possono essere annidati in modo arbitrario):

  7. COMPORTAMENTO DI UN OGGETTO Il comportamento di un oggetto è definito dall’insieme di operazioni (creazione,distruzione,modifica,ricerca e altro) che possono essere applicate all’oggetto. Un’operazione è costituita da: • segnatura (o interfaccia) nome e argomenti, visibile all’utente • metodo implementazione, non visibile all’utente

  8. Vantaggi derivanti dall’incapsulamento Possibilità di modificare sia la struttura interna di un oggetto sia l’implementazione della sue operazioni senza dover modificare i programmi che invocano tali operazioni (indipendenza dei dati e delle operazioni)

  9. SPECIFICA DELLA PERSISTENZA Ci sono due meccanismi per rendere persistente un ogetto: • denominazione attribuire un nome unico persistente • raggiungibilità rendere l’oggetto raggiungibile da oggetti persistenti

  10. TIPO DI UN OGGETTO E’ definito da: • struttura (mediante costruttori di tipo si definisce l’insieme degli stati ammissibili per un oggetto) • operazioni (mediante la segnatura) E’identificato da un nome

  11. ESTENSIONI La dichiarazione di una relazione in un DBMS relazionale definisce sia un tipo (schema della relazione) che un contenitore (l’istanza della relazione) di oggetti (tuple) di quel tipo. In un OODBMS occorre dichiarare esplicitamente un oggetto (estensione) il cui tipo è una collezione di oggetti dello stesso tipo.

  12. GERARCHIE DI TIPI Un tipo può essere definito come sottotipo di un altro tipo (supertipo). Il sottotipo eredita struttura e operazioni del supertipo. Inoltre può avere ulteriori variabili di istanza e operazioni.

  13. POLIMORFISMO Un’ operazione può avere diverse implementazioni per diversi sottotipi di uno stesso tipo. La scelta dell’implementazione può essere fatta: • a tempo di compilazione (binding statico) • a tempo di esecuzione (binding dinamico)