I pericoli della programmazione con i mixin/3

Dagli articoli precedenti dovrebbe essere ampiamente chiaro che io non amo i
mixin, ma vale la vena di spiegare esattamente cos’è che mi dà così
tanto fastidio. Tutti noi sappiamo che il modo migliore di
risolvere un problema complesso è quello di spezzarlo in sottoproblemi più
piccoli disaccoppiati, secondo la massima del dividi et impera. La
cosa fastidiosa dei mixin è che questo principio viene applicato all’inizio (il
problema viene scomposto in pacchetti disgiunti di funzionalità) ma
alla fine tutte le funzionalità separate vengono rimescolate insieme
in un calderone unico, che è il namespace della classe figlia. Che
l’iniezione avvenga direttamente come in Ruby o indirettamente tramite
l’ereditarietà come in Python, il risultato non cambia: alla fine
l’utente della classe figlia si trova a dover gestire centinaia di
metodi tutti assieme e non ha un modo ovvio per capirne la
provenienza.

Overpopulation.jpg

Il problema del sovraffollamento

[Read more…]

Recensione di Implementation Patterns

Implementation Patterns CoverSono sicuro che da qualche parte sulla rete esiste il vademecum della recensione perfetta o un manuale per scrivere recensioni. Onestamente, preferisco raccontarvi il mio viaggio con il libro di Beck. Intanto una premessa: a partire dal cosiddetto Libro Bianco, ovvero “Extreme Programming Explained: Embrance Change” – prima edizione, ho letto tutti i libri che Beck ha pubblicato. Questo background mi ha sicuramente influenzato, ed è con queste lenti che bisogna approcciare la mia recensione di “Implementation Patterns”.

[Read more…]