

Studia grazie alle numerose risorse presenti su Docsity
Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium
Prepara i tuoi esami
Studia grazie alle numerose risorse presenti su Docsity
Prepara i tuoi esami con i documenti condivisi da studenti come te su Docsity
Trova i documenti specifici per gli esami della tua università
Preparati con lezioni e prove svolte basate sui programmi universitari!
Rispondi a reali domande d’esame e scopri la tua preparazione
Riassumi i tuoi documenti, fagli domande, convertili in quiz e mappe concettuali
Studia con prove svolte, tesine e consigli utili
Togliti ogni dubbio leggendo le risposte alle domande fatte da altri studenti come te
Esplora i documenti più scaricati per gli argomenti di studio più popolari
Ottieni i punti per scaricare
Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium
riassunto sintetico (ma discorsivo) della parte teorica di database, OOP e modello R (cenni)
Tipologia: Appunti
1 / 3
Questa pagina non è visibile nell’anteprima
Non perderti parti importanti!


Un database è un archivio di dati, in cui i dati sono organizzati e accessibili per via elettronica. I database sfruttano la OOP, Oriented Object Programmation. Un oggetto (oggetto di tipo software) è un insieme di dati e funzioni a disposizione del programmatore; gli oggetti vengo divisi in classi (vetture, alunni, gatti) e specifiche (Porche, Giordana, Olga). La classe è un prototipo di oggetti; in realtà si distinguono superclassi (gatto) e sottoclassi (siamese). La OOP è un’evoluzione del paradigma di programmazione imperativo, perché contiene già il software, segue cioè un modello, non devo stabilire io l’algoritmo. La programmazione imperativa utilizza un linguaggio imperativo (leggi, scrivi, fai) e non esiste senza variabili e strutture lineari o di controllo. La programmazione imperativa infatti contiene: Variabili, a cui viene fatta l’assegnazione subito Strutture lineari (sequenza), di scelta (scelta unaria, binaria, multipla), iterative (while…do, repeat…until, for…to…do) Sottoprogrammi (main, procedure, funzioni) La OOP contiene: Superclassi, sottoclassi Oggetti divisi in categorie e caratterizzati solo da specifiche essenziali La OOP si caratterizza per Ereditarietà: gli oggetti ereditano gli attributi di una classe superiore Incapsulamento: è la relazione che lega l’oggetto ad una classe; prendere le specifiche, consente la distinzione degli oggetti; Polimorfismo: la possibilità di una variabile di poter essere di tipologie diverse Es: superclasse felino viene ereditato da gatti, tigri, leoni; dati diversi vengono invece incapsulati nella sottoclasse gatto, tigre, leone. Le classi vengono rappresentate dal modello software UML, che vede la classe rappresentata su tre livelli, secondo uno schema composto da vari rettangoli: titolo, attributi, operazioni. DATABASE Un database è un archivio di dati, in cui i dati sono organizzati e accessibili per via elettronica. Un database si differenzia da un file perché in un file si può mettere qualsiasi tipo di informazione, mentre nel database le informazioni devono essere legate tramite una connessione logica, cioè deve esistere una relazione tra le entità (oggetti) che costituiscono il database. Un database deve essere Sicuro, cioè protetto in caso di interventi indesiderati o danneggiamenti; Consistente, cioè deve contenere dati utilizzabili e significativi Condivisibile Persistente, cioè i dati devono conservarsi anche dopo l’esecuzione del programma Scalabile, cioè deve mantenere inalterate le proprie performance anche se aumenta la quantità di dati in esso memorizzata
Per gestire un database si usa il DBMS, Data Base Management System, che è un insieme di strumenti software che consente di manipolare i dati, cioè di condividere, aggiornare, interrogare (operazione di Query) i dati. Il DBMS è costituito da 3 livelli: Livello esterno; quello tramite cui l’utente può interfacciarsi con il database; il linguaggio che consente ciò è il Data Manipulation Language, DML consente l’operazione di vista, ossia l’astrazione di una parte dei dati contenuta nel database. Livello logico o concettuale; a questo livello avviene la definizione delle caratteristiche dei dati, il controllo degli accessi da parte degli utenti e l’esecuzione di operazioni. È la struttura logico-astratta assunta dai dati. Livello fisico o interno; è il livello a cui effettivamente avviene la memorizzazione dei dati, tramite, per es, record. L’insieme delle attività volte a realizzare la base di dati è detta metodologia di progettazione, e riflette la struttura a livelli del DBMS. Progettazione concettuale: fornisce una rappresentazione corretta e completa della realtà analizzata; ha come input le entità e come output, per esempio, il diagramma E/R Per rappresentare un database si sfruttano dei modelli. I modelli possono essere concettuali (evidenziano concettualmente, per tipologia, i dati contenuti nel database) o logici (evidenziano la struttura utilizzata per la memorizzazione dei dati, tabelle, grafici ad albero…). Tra i modelli concettuali più utilizzati c’è il modello E/R, Entity Relationship. Progettazione logica: riceve in input il digramma E/R e lo trasforma in una rappresentazione supportata dal pc (es: tabella). Progettazione fisica: riceve in input le tabelle e le implementa nella memoria di massa. MODELLO E/R Modello grafico che consente la descrizione dei dati e mette in evidenza le relazioni che ci sono tra questi. Nel modello E/R abbiamo Entità: oggetti che compongono la realtà in esame; si rappresentano in rettangoli (persona, scuola) Attributi: sono le proprietà che descrivono le entità; si rappresentano con un pallino e un segmento uscenti dal rettangolo (persona: nome, età, data di nascita, codice fiscale; scuola: nome, luogo, indirizzo, codice scuola) Relazione: è un verbo che associa due entità (frequenta) Tra gli attributi abbiamo la PK o Primary Key, che distingue univocamente un’istanza di un’entità da un’altra istanza; si rappresenta con un pallino pieno. Cardinalità: numero di volte che un’istanza dell’entità deve o può partecipare all’associazione. (1,1) ogni istanza partecipa min 1 volta e max 1 (1,N) min 1 max N (0,1) min 0, max 1 (0,N) min 0, max N