PDA

View Full Version : [Java] Libro: Design Patterns dei Gang of Four


Matrixbob
17-04-2012, 21:10
[Java] Libro: Design Patterns (http://it.wikipedia.org/wiki/Design_Patterns) dei Gang of Four (http://it.wikipedia.org/wiki/Gang_of_four)

Questo per intenderci:
http://www.amazon.it/Design-patterns-Professionale-Gamma/dp/887192150X/ref=sr_1_1?ie=UTF8&qid=1334645115&sr=8-1
, è ancora attuale?
Posso comprarlo senza buttare 35e oppure è superato e c'è di meglio?

cdimauro
17-04-2012, 21:42
Ho preso la versione italiana qualche anno fa (ben tradotta: è quasi un miracolo), e ancora oggi quando ho tempo me lo rileggo...

Matrixbob
17-04-2012, 22:21
Ho preso la versione italiana qualche anno fa (ben tradotta: è quasi un miracolo), e ancora oggi quando ho tempo me lo rileggo...
Quindi se compro spendo bene mi pare di capire.
E detto da te cdimauro, ha un certo peso. :)

cdimauro
17-04-2012, 22:54
E' un acquisto che vale sicuramente i soldi spesi.

Si tratta di un testo vecchio, ma ancora attualissimo. Ottimo nell'introduzione e nella spiegazione, molto chiaro nella catalogazione ed esposizione dei pattern.

In ogni caso andrebbe poi integrato con qualche altro testo più moderno che fornisca un compendio più aggiornato dei pattern (e che magari sia legato anche alla rifattorizzazione).

LMCH
18-04-2012, 00:19
Si tratta di un testo vecchio, ma ancora attualissimo.

Già, i pattern "di base" non dipendono più di tanto dal linguaggio e quelli della GoF in termini generali li hanno inquadrato bene.
Poi oltre al refactoring ed ai design pattern più specifici in un certo linguaggio o piattaforma che si usa, è anche il caso di dare un occhiata agli antipattern in modo da imparare a riconoscere per tempo il loro emergere graduale e rifattorizzare per eliminarli prima che la cosa diventi onerosa.
Quando si sviluppa software relativamente complesso non è infrequente che per questioni di tempistica a breve termine si facciano "ritocchini" una-pezza-e-via per aggiungere qualcosa che sommandosi con altri poi portano all'emergere di antipattern che finiscono con il complicare la vita se non si interviene in tempo.

gugoXX
18-04-2012, 05:08
Si', e' ancora attuale anche se altri pattern sono diventati patrimonio comune, mentre alcuni ne sono usciti.
E comunque non e' strettamente legato a Java, anzi gli esempi del libro originale sono fatti in SmallTalk

Matrixbob
18-04-2012, 20:21
x gli anti-pattern dove posso trovare la bibbia inequivocabile?

LMCH
19-04-2012, 00:20
x gli anti-pattern dove posso trovare la bibbia inequivocabile?

Per quelli non c'è una vera e propria "bibbia", specialmente perchè quasi tutti i libri sugli anti-pattern includono anche quelli organizzativi e di management
(anzi, certi libri si focalizzano esclusivamente su quelli ignorando gli anti-pattern relativi al software :fagiano: ).

La pagina in lingua inglese di wikipedia ha un elenco abbastanza completo delle varie tipologie.
http://en.wikipedia.org/wiki/Anti-pattern
Occhio che i due libri in "Further Reading" sono proprio del genere "tutta organizzazione e management e poco/zero software.

Comunque gli anti-pattern "del software" sono strettamente legati al refactoring (nel senso che il refactoring in ultima analisi consiste nell'individuare un anti-pattern "del software" ed eliminarlo ristrutturando il codice) quindi capita che quelli "software" siano descritti nei libri sul refactoring senza essere chiamati esplicitamente anti-pattern.

DioBrando
19-04-2012, 10:31
[Java] Libro: Design Patterns (http://it.wikipedia.org/wiki/Design_Patterns) dei Gang of Four (http://it.wikipedia.org/wiki/Gang_of_four)

Questo per intenderci:
http://www.amazon.it/Design-patterns-Professionale-Gamma/dp/887192150X/ref=sr_1_1?ie=UTF8&qid=1334645115&sr=8-1
, è ancora attuale?
Posso comprarlo senza buttare 35e oppure è superato e c'è di meglio?

E' sicuramente un ottimo testo, una delle varie "Bibbie" da conservare sul comò.

Ho preso la versione italiana qualche anno fa (ben tradotta: è quasi un miracolo), e ancora oggi quando ho tempo me lo rileggo...

Decisamente un miracolo. Insieme alla traduzione del Cormen (ASD) tra i pochissimi testi italiani meritevoli di acquisto.

E' un acquisto che vale sicuramente i soldi spesi.

Si tratta di un testo vecchio, ma ancora attualissimo. Ottimo nell'introduzione e nella spiegazione, molto chiaro nella catalogazione ed esposizione dei pattern.

In ogni caso andrebbe poi integrato con qualche altro testo più moderno che fornisca un compendio più aggiornato dei pattern (e che magari sia legato anche alla rifattorizzazione).

Personalmente ho comprato qualche anno fa (alla PyCon :D ) Design Patterns della Head First. Collana che consiglio di tenere d'occhio per le spiegazioni, anche dal punto di vista dell'impaginazione, davvero ben fatte e diverse dallo stile solito accademico.


Si', e' ancora attuale anche se altri pattern sono diventati patrimonio comune, mentre alcuni ne sono usciti.
E comunque non e' strettamente legato a Java, anzi gli esempi del libro originale sono fatti in SmallTalk

Esatto, tanto è vero che spesso si utilizza come complemento "Design Patterns Smalltalk Companion (http://www.amazon.com/The-Design-Patterns-Smalltalk-Companion/dp/0201184621)".



L'OOP diventa mainstream di fatto con lo Xerox PARC (dove Alan Kay e colleghi danno alla luce appunto Smalltalk.

I design pattern però, come spiega bene Gamma nell'introduzione, non sono nulla di magico, "semplicemente" l'elaborazione e formalizzazione teorica di pratiche che vengono riconosciute come ricorrenti (pattern appunto) nella risoluzione di requisiti/problemi legati allo sviluppo del software.

E' piuttosto ovvio pensare che in 20 anni trascorsi dalla prima stesura del testo, la teoria e la pratica abbiano fatto emergere altre best practice.

Oltretutto i pattern non sono certo solo di questo tipo, ce ne sono architetturali, comportamentali ecc. ecc.
Tra quelli di maggiore successo emersi e non citati nel GoF basta citare MVC e la sua ulteriore metamorfosi MVVM, il Repository Pattern.

Come ulteriore complemento mi sento di consigliarti

- Domain-Driven Design: Tackling Complexity in the Heart of Software (http://www.amazon.it/Domain-Driven-Design-Tackling-Complexity-Software/dp/0321125215)

- Patterns of Enterprise Application Architecture (http://www.amazon.it/Patterns-Enterprise-Application-Architecture-Signature/dp/0321127420/ref=sr_1_1?s=english-books&ie=UTF8&qid=1334824124&sr=1-1)