|
- Autore: W. Crawford, J.Kaplan
- Data: Settembre 2003
- Prezzo: $39.95
- Pagine: 368
- Editore: O'Reilly
- Rating:
|
Recensione di:
FabrizioGianneschi
Un gran bel libro.
EÂ? questo il primo e più importante commento che si può fare parlando di
J2EE Design Patterns, pubblicato recentemente dalla OÂ?Reilly; come si affrettano a spiegare gli stessi autori, non si tratta Â?dellÂ?ennesimo libro sui patternÂ?, ma di unÂ?interessante collezione di implementazioni di questi ultimi specifica per il mondo J2EE. Non è senzÂ?altro un libro rivolto ai neofiti di Java, ma a coloro aventi almeno un minimo di esperienza lavorativa in applicazioni di dimensioni medio-elevate.
Un pattern è una soluzione più o meno astratta ad un problema specifico, in genere ricorrente. Infatti, specialmente nelle applicazioni web, capita spesso di imbattersi in problemi comuni a tutti gli altri sviluppatori. I problemi possono riguardare la scalabilità, la robustezza, la corretta modularità o le prestazioni dei sistemi. Invece di reinventare continuamente la ruota, conviene riferirsi a soluzioni già elaborate, testate e validate dalla comunità internazionale: i pattern, appunto.
Ogni pattern ha un nome (es:
Data Access Object Â? DAO), un problema a cui si riferisce (generalmente indipendente dal linguaggio di programmazione), una tecnica risolutiva dello stesso, dei vantaggi e degli svantaggi comportati dal suo utilizzo. Grazie allÂ?utilizzo dei pattern, gli sviluppatori imparano presto ad utilizzare un vocabolario comune per identificare classi di problemi e relative soluzioni, contribuendo così alla creazione di applicazioni più robuste e performanti.
In genere, a partire dal famoso
Design Patterns della Gang of Four, i libri sullÂ?argomento si riducono allÂ?elencazione di pattern senza inoltrarsi troppo in esempi di codice specifici per un dato linguaggio. Questo è un bene per le caratteristiche di astrazione che un pattern deve possedere, ma è anche un limite per chi poi deve dare loro unÂ?implementazione reale.
Il libro che presentiamo, invece, si focalizza su J2EE e presenta una nutrita serie di pattern ad essa relativi, alcuni noti ed altri meno, tutti comunque illustrati nel dettaglio con del codice implementativo. Il livello di dettaglio è tale che la maggior parte dei pattern presentati può essere tranquillamente copiata nelle vostre applicazioni senza troppi sforzi.
Gli autori differenziano i pattern presentati in quattro grandi categorie (in aggiunta, tutte riassunte in Appendice alla fine del libro):
- Presentation Tier Patterns: rivolti a tutti i problemi dello strato di Â?presentazioneÂ? delle applicazioni J2EE, tipicamente incentrati sulle JSP e sulle Servlet, ma anche con considerazioni riguardanti la scalabilità, concorrenza ed il riuso;
- Business Tier Patterns: per tutto ciò che concerne la logica di business delle applicazioni, tipicamente basata su EJB o oggetti di modello, senza trascurare gli aspetti di trasferimento ed accesso ai dati, specialmente in ambito distribuito;
- Messaging Patterns: dedicati a tutti gli aspetti di comunicazione ed integrazione tra applicazioni, generalmente basati su sistemi messaggistici come JMS o JavaMail. I pattern elencati comprendono sistemi sincroni ed asincroni.
- J2EE Antipatterns: ovvero il contrario dei patterns; tutto ciò che NON si dovrebbe mai fare, gli errori più comuni in cui si incorre.
Ogni categoria è poi suddivisa in vari capitoli, ad esempio ce ne sono tre per i soli pattern di Presentation e ben cinque per il lato Business; ogni capitolo è specifico per un problema (es: Â?Presentation Tier ScalabilityÂ?) in modo che sia relativamente semplice consultare il libro anche per necessità ben determinate senza doverlo leggere interamente.
I pattern sono descritti in tre modalità: discorsiva, UML e tramite codice Java. Lo stile discorsivo è fluido, amichevole e sempre ben focalizzato sul problema. LÂ?UML (a cui è anche dedicato un breve capitolo di ripasso) non è pesante ed è sempre molto chiaro; la notazione utilizzata è quella della GoF.
Il codice è efficace, chiaro e limitato a ciò che interessa. Raramente troverete pagine e pagine di codice, se non strettamente necessario, poiché spesso tali pagine vengono saltate a piè pari dai lettori. Se non per i pattern di Messaging, in cui effettivamente il codice scarseggia, non vi capiterà mai di osservare un pattern e di non capirlo a fondo.
Infine, la parte dedicata agli Antipattern è interessante e per niente scontata; gli autori segnalano anche altri testi dedicati allÂ?argomento.
Conclusioni
J2EE Design Patterns è raccolta di preziosa raccolta di risorse ed indicazioni per tutti quelli coinvolti o interessati nel disegno delle applicazioni, ma che tuttavia non disdegnano di mettere le mani sul codice. Analisti, sviluppatori e sistemisti che mirano a costruire applicazioni affidabili, scalabili ed altamente performanti. Per costoro, sarà senzÂ?altro un gradito compagno di lavoro.
Pro- Buona quantità di pattern illustrati
- Esempi di codice e diagrammi UML molto efficaci
- Aggiornato e ben focalizzato su J2EE
Contro- Poco codice nei pattern di messaggistica
Copyright © 2003-20011 Java User Group Sardegna Onlus. - Java, the Java Coffee Cup Logo and the Duke Logo are trademarks or registered trademarks of Oracle corporation in the U.S. and other countries.