Stagione 57: ORM
Dopo l'arco sui database, l'ORM: il ponte tra gli oggetti del codice e le tabelle del database. Dall'incastro imperfetto ad Active Record e Data Mapper, dalla sessione invisibile al flagello N+1, da caricamento pigro e impaziente alle migrazioni e alla portabilità, fino alla sintesi matura del mappatore-e-linguaggio-del-database. Il caso più puro della tesi del podcast: non puoi usare bene la magia senza capire la macchina sotto.
Episodi
10 episodi
La magia che devi saper spegnere: cosa l'ORM ci insegna
Il finale che chiude l'arco dati: l'ORM non sostituisce la conoscenza del database, la premia...
Magia utile, magia pericolosa: quando usare un ORM e quando no
Né ORM contro il linguaggio del database né viceversa, ma insieme: il pilota automatico che sai usare e sai spegnere...
Il dialetto e la promessa della portabilità
La portabilità tra database: vera per il lavoro comune, illusoria sui superpoteri specifici che rendono unico ogni database...
Lo schema che vive nel codice: le migrazioni
Le migrazioni: la forma del database come codice versionato, con l'insidia delle modifiche sulle tabelle enormi in produzione...
Pigro o impaziente: quando caricare i dati collegati
Caricamento pigro contro impaziente: la manopola dietro l'N+1, e perché il quando conta quanto il se...
Il flagello delle interrogazioni nascoste (N+1)
Il problema N+1: centouno interrogazioni invece di due, l'astrazione che perde nella sua forma più istruttiva...
La sessione invisibile: come l'ORM tiene il conto
La sessione in memoria: mappa delle identità e lavoro in blocco, la macchina nascosta da cui nascono i comportamenti a sorpresa...
Le due grandi scuole: Active Record e Data Mapper
Le due filosofie: l'oggetto che si salva da solo (Active Record) e l'oggetto puro con un aiutante separato (Data Mapper)...
L'incastro imperfetto: oggetti contro tabelle
L'incastro imperfetto tra oggetti a grappolo e tabelle piatte, e come il mappatore traduce classe, oggetto, proprietà e collegamento...
Il ponte tra due mondi: che cos'è un ORM
Dopo cinque stagioni dentro i database, l'ORM è il ponte tra il codice a oggetti e le tabelle: la promessa, il prezzo e i due pilastri della stagione...