Customize Consent Preferences

We use cookies to help you navigate efficiently and perform certain functions. You will find detailed information about all cookies under each consent category below.

The cookies that are categorized as "Necessary" are stored on your browser as they are essential for enabling the basic functionalities of the site. ... 

Always Active

Necessary cookies are required to enable the basic features of this site, such as providing secure log-in or adjusting your consent preferences. These cookies do not store any personally identifiable data.

No cookies to display.

Functional cookies help perform certain functionalities like sharing the content of the website on social media platforms, collecting feedback, and other third-party features.

No cookies to display.

Analytical cookies are used to understand how visitors interact with the website. These cookies help provide information on metrics such as the number of visitors, bounce rate, traffic source, etc.

No cookies to display.

Performance cookies are used to understand and analyze the key performance indexes of the website which helps in delivering a better user experience for the visitors.

No cookies to display.

Advertisement cookies are used to provide visitors with customized advertisements based on the pages you visited previously and to analyze the effectiveness of the ad campaigns.

No cookies to display.

BzaarCamp

Dottori, il 30 Settembre a Mllano si svolgerà il bzaarcamp, un BarCamp italiano che radunerà le migliori menti della nostra nazione che non hanno nient’altro di meglio da fare. BzaarCamp
L’evento è speciale e chiunque può partecipare, e, se lo vuole, può portare un argomento di cui parlare.
Io, miei cari, non so di cosa parlare, ma mi sembra che partecipare senza fare nulla e solo ascoltando sia un po’ come sfruttare le conoscenze altrui.
Quindi, ho postato nella lista degli argomenti possibili, una presentazione di uno dei libri di fantascienza che preferisco: Un cantico per Leibowitz di Walter M. Miller Jr.
La cosa non c’entra niente con il resto degli interventi, ma proprio per questo mi stuzzica.
Se avete qualche idea alternativa, proponetela, parlare a ruota libera di argomenti che non conosco è il secondo dei miei hobby.

Database ad oggetti?

Chiunque abbia fatto un po’ di programmazione ad oggetti sa benissimo che le difficoltà più grandi si affrontano quando si deve gestire la persitenza delle informazioni.
Questo perché il nostro modello ad oggetti deve essere salvato su un database che nella totalità dei casi è un database relazionale. Cioè fatto di tabelle piatte su cui salvare i dati. Questo porta ad una dicotomia (impedance mismatch): da una parte il modello usato dai programmi applicativi dovrebbe essere quanto più ad oggetti, dall’altra il modello deii dati sul database deve essere puramente relazionale.
Il problema viene risolto in vari modi: si può sacrificare il modello ad oggetti alla logica del database, individuando come oggetti le tabelle dove andranno a salvarsi i dati oppure si può utilizzare uno strato di software che si occupa di fare la conversione tra i due modelli.
Entrambi i metodi hanno, chiaramente, degli svantaggi, sia dal punto di vista delle performance, sia dal punto di vista della manutenibilità del codice e della sua chiarezza.
Una soluzione, che già era stata percorsa una decina di anni fa con scarsi risultati, è quella di avere dei database ad oggetti, che salvano gli oggetti mantenendone le caratteristiche.
Uno di questi è db4o (db for objects), che è rilasciato mediante GPL per scopi non commerciali (una licenza uguale a quella di MySQL). Scritto in versione java e .NET, fornisce al programmatore delle semplici API che consentono di salvare oggetti complessi direttamente con una istruzione.
Certo si perde tutto l’SQL, la teoria sulle normalizzazioni e gli RDBMS, ma ci si può fare un pensierino per modelli ad oggetti di una certa complessità.
Qui e qui approfondimenti sul tema.
Dottori, non preoccupatevi, sto bene (si fa per dire, naturalmente), è che volevo un po’ fare il Beggi, oppure il Fullo.