Maggio è il mese del PHPDay e del JSDay, e quindi già solo le novità viste durante i quattro giorni delle due conferenze, a cui molti di noi hanno partecipato, sarebbero state un buon argomento di discussione, ma noi avevamo persino di più!
E quindi, riuniti ancora una volta nella “Sala legno” di Luiss Enlabs, Leonardo ci ha proposto di parlarci di come lui e Giorgio stanno mettendo in pratica ciò che hanno imparato del DDD: Leonardo ha tenuto un’interessantissima presentazione su come modellare gli oggetti di un dominio restando completamente agnostici rispetto alle altre componenti del sistema, framework in primis.
I motivi per farlo sono molteplici, ma possono essere riassunti sotto un cappello più importante di altri: disaccoppiamento (che di conseguenza porta indipendenza).
L’indipendenza consente di riusare o trasportare il codice di dominio, per esempio, da Symfony2 a Zend Framework senza toccare praticamente nulla, o anche di aggiornare il framework su cui gira l’applicazione con molti meno problemi: quanti di noi hanno dovuto tenere progetti in Symfony1 perché il passaggio a Symfony2 era troppo oneroso? Ma in realtà il dominio non era cambiato, era cambiato solo il framework, e se il dominio fosse stato slegato dal framework il passaggio sarebbe stato molto più semplice.
La presentazione ha quindi evidenziato i concetti di base del DDD e poi ha mostrato delle implementazioni pratiche con un piccolo caso di esempio, mostrando come il codice del dominio potesse essere scritto in maniera, appunto, agnostica, e come poi poteva essere utilizzato all’interno di un’applicazione Symfony2.
Leonardo ci ha promesso di fare un aggiornamento e farci vedere la stessa applicazione scritta in Symfony2 e in ZF con lo stesso codice di dominio: attendiamo il prossimo incontro per vedere i risultati!
Oltre all’implementazione pratica, di particolare interesse sono state le riflessioni sull’ubiquitous language, ovvero sull’importanza di dare, agli oggetti del dominio, un nome che sia condiviso e riconosciuto sia dagli sviluppatori che dagli esperti di dominio (che normalmente sono persone del cliente) e alcune osservazioni su come lo stesso oggetto può cambiare valenza se cambia il dominio di riferimento: una banconota da un dollaro vale come un’altra per una persona che la deve usare, ma nel dominio della Zecca che stampa i soldi, ogni singola banconota è diversa dalle altre, tant’è che ha un numero di serie.
Dopo la presentazione siamo andati a cena: per la prima volta la decisione sul posto in cui andare a mangiare è stata presa in anticipo, grazie a un sondaggio fatto nei giorni precedenti.
Niente stress per decidere all’ultimo e mettersi d’accordo, niente stress per prenotare, e soprattutto, per la gioia di molti e il dispiacere del nostro Presidente, niente “Nazzareno” 🙂
Siamo invece andati al ristorante pizzeria “I Fratelli“, a San Lorenzo: carino, con un buon servizio e dal prezzo accettabile.
Nota storica: per la prima volta il nostro Presidente non ha potuto partecipare all’incontro, per un imprevisto dell’ultimo minuto. C’è chi maligna che in realtà il motivo sia stato il basso risultato del “Nazzareno” nei sondaggi, ma lui nega!
Garakkio, tragedia!