Visualizzazione post con etichetta recensioni tecniche. Mostra tutti i post
Visualizzazione post con etichetta recensioni tecniche. Mostra tutti i post

sabato 11 aprile 2009

Strumenti per il lavoro

Lavoro da parecchi anni sulle tecnologie Java e J2EE (dal 1998), ma non ho ancora trovato uno strumento di lavoro veramente completo per questi ambienti.
Ciò che servirebbe è uno strumento che includesse un supporto completo alla modellazione UML e un IDE. Ho sempre trovato solo strumenti validissimi per fare una cosa oppure l'altra, ma mai assieme.
Certo, è evidente che realizzare un software del genere non è impresa facile... Eppure, molto è stato fatto per creare prodotti specializzati, anche gratuiti (come NetBeans http://www.netbeans.org/, che nella versione 6.5 è davvero un ottimo editor per Java e le tecnologie enterprise correlate), o MagicDraw UML (http://www.nomagic.com/) prodotto commerciale di alta qualità, o IntelliJ IDEA (http://www.jetbrains.com/), altro ottimo editor per Java, che rimango sorpreso del fatto che sembrano ancora pochi gli sforzi fatti per integrare il "mondo" degli analisti e degli architetti software con quello degli sviluppatori.
In realtà, vengono realizzati plugin a iosa (ne esiste uno anche proprio per MagicDraw verso NetBeans), ma spesso sono già obsoleti appena usciti perché, mentre ne viene realizzato uno sul prodotto A per la versione X del prodotto B, questo esce nella versione Y poco tempo dopo.
Inoltre, spesso ci sono grosse limitazioni: il plugin serve solo ad aprire (in una nuova finestra, magari) l'altro prodotto; oppure uno dei due non supporta una determinata tecnologia, o uno specifico Application Server...
Sarebbe troppo attendersi che i leader di questi prodotti cerchino di mettere in piedi delle joint venture per aiutare a lavorare noi poveri architetti, progettisti e sviluppatori con prodotti davvero integrati e con pieno supporto di tutte le tecnologie necessarie?

giovedì 17 gennaio 2008

Effective Java

Un ottimo libro per gli sviluppatori Java è Effective Java di Joshua Bloch.
Non è un libro per tutti, ma solo per coloro che desiderano utilizzare Java al meglio. Chi lavora da anni nel campo delle tecnologie IT, avrà già capito cosa intendo dire. Java è un grande linguaggio, ma può essere usato anche molto male, sminuendone le enormi possibilità.
Ma se avete intenzione di "alzare il livello" della vostra programmazione in questo linguaggio, questo è uno di quei libri che dovrebbe essere tenuto gelosamente tra gli scaffali della vostra libreria.
Bloch dà una serie di suggerimenti di enorme valore. Non che ci sia da stupirsi di questo, dato che è uno tra i più importanti architetti software della Sun ed ha contribuito in maniera sostanziale allo sviluppo del Java Collection Framework e ad altre importanti caratteristiche del linguaggio.
Il libro propone una serie di argomenti interessanti, come la gestione delle eccezioni, i thread, la scrittura della documentazione e la serializzazione degli oggetti, fornendo in ciascun campo una serie di elementi (definiti item nel testo) spesso illuminanti.
Pur essendo molto compatto (solo 250 pagine), è davvero una fonte preziosa d'informazioni. Oggi può essere acquistato per circa 30 €.

martedì 7 agosto 2007

Analysis Pattern

Con questo post inizio una nuova serie, dedicata alla recensione di libri tecnici.
Analysis Pattern di Martin Fowler è il primo di questa serie.
In verità questo post, oltre ad essere una recensione, è un atto di riconoscenza nei confronti di questo libro e degli articoli pubblicati sul web da questo Autore.
Lo ammetto: sono un fan di Martin Fowler. Perché? Perché ha la capacità di esporre l'essenza di un problema e le possibili soluzioni in maniera essenziale fornendo al lettore prospettive inedite.
Il libro Analysis Pattern è stato pubblicato nel 1996. È quindi un libro datato e mostra la sua età soprattutto nella notazione (non UML, le cui specifiche non erano ancora state pubblicate, all'epoca). Ciò nonostante, mi sento di consigliarlo a tutti gli Analisti e gli Architetti software, oltre che per le ragioni già scritte, anche perché è forse l'unico che tratti questo argomento. I pattern di analisi, in effetti, non sembrano essere presi in considerazione quanto quelli di progettazione (design pattern) e quelli di piattaforme specifiche (J2EE design pattern). Eppure, il lavoro di un Architetto software inizia proprio dai requisiti utente ed è quindi molto importante, già durante la raccolta dei requisiti, individuare elementi aggregabili in base a pattern, cioè in base a strutture già sperimentate.
Il libro contiene più di 70 pattern, classificati in base all'area di applicazione (organizzativa, finanziaria e sanitaria) e al tipo di problema che risolve (ad esempio come tracciare gli eventi che hanno portato ad un certo risultato finanziario).
Nella mia esperienza personale, mi sono trovato più volte a far riferimento a questo libro e agli articoli pubblicati da Martin Fowler su questo argomento, ma ho trovato particolarmente utili tre tra i pattern di analisi proposti da Martin Fowler: Accountability, che consente di applicare diverse soluzioni alle strutture organizzative; Range, un pattern che consente di trattare intervalli temporali, numerici o di qualsiasi altro tipo come oggetti ben definiti e Dynamic Property, che può essere applicato in oggetti che non necessitano di una forte tipizzazione degli attributi.
Se l'argomento vi interessa, date prima un'occhiata a questo link: http://www.martinfowler.com/articles.html#ap.
Se volete approfondirlo, il titolo completo del libro è:
Analysis Patterns: Reusable Object Models
Martin Fowler
The Addison-Wesley Object Technology Series. 9 Ottobre 1996