Object-relational mapping: differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
m fix wlink a disambigua |
m Bot: formattazione dei wikilink; modifiche estetiche |
||
Riga 3:
Un prodotto ORM fornisce, mediante un'interfaccia orientata agli oggetti, tutti i servizi inerenti alla [[persistenza]] dei dati, astraendo nel contempo le caratteristiche implementative dello specifico RDBMS utilizzato.
== Descrizione ==
I principali vantaggi nell'uso di un tale sistema sono i seguenti.
Riga 12:
I prodotti per l'ORM attualmente più diffusi offrono spesso nativamente funzionalità che altrimenti andrebbero realizzate manualmente dal [[programmatore]]:
* Caricamento automatico del grafo degli oggetti secondo i legami di associazione definiti a livello di linguaggio. Il caricamento di un'ipotetica istanza della [[classe (informatica)|classe]] ''Studente'', potrebbe automaticamente produrre il caricamento dei dati collegati sugli esami sostenuti. Tale caricamento, in più, può avvenire solo se il dato è effettivamente richiesto dal programma, ed è altrimenti evitato (tecnica nota con il nome di ''[[Lazy initialization|
* Gestione della [[concorrenza (informatica)|concorrenza]] nell'accesso ai dati durante ''conversazioni''. Conflitti durante la modifica di un dato da parte di più utenti in contemporanea, possono essere automaticamente rilevati dal sistema ORM.
* Meccanismi di [[Cache|caching]] dei dati. Per esempio, se accade che uno stesso dato venga prelevato più volte dal RDBMS, il sistema ORM può fornire automaticamente un supporto al caching che migliori le prestazioni dell'applicazione e riduca il carico sul sistema DBMS.
|