Platone definiva l’essere umano come “Bipede implume dotato di anima“: aveva sicuramente in mente i Tratti Scala, nella sua lungimiranza. I tratti, analoghi alle interfacce Java, offrono in più la possibilità di centralizzare codice, maggiore flessibilità associata a un migliore controllo. Non ci credete? Leggiamo insieme questo post!...
Continue reading...
La Programmazione Orientata agli Aspetti (AOP) per alcuni è considerata il fallimento della programmazione ad oggetti perché destruttura l’architettura con cui sono collegati gli oggetti. Per altri invece è un toccasana e viene vissuta come un potenziamento della programmazione ad oggetti stessa perché permette di incapsulare certi comportamenti (aspetti, appunto) che sono trasversali al flusso di programmazione/elaborazione modellato nel grafo di oggetti che rappresenta un dominio. In questo post cercheremo di far capire cosa significa programmare ad aspetti, implementando i concetti dell’AOP nel nostro modello ad oggetti in modo semplice e diretto con il solo ausilio di CGLIB, senza scomodare nomi importanti come AspectJ e Spring AOP....
Continue reading...
In questo post presentiamo una overview di Scala, linguaggio di programmazione Object Oriented e strongly typed, ma funzionale e molto potente che è completamente compatibile col bytecode Java. Quest’ultimo sta per compiere ormai vent’anni: forse è già nato il linguaggio che può offrirci ancora di più? Scopriamolo assieme, attraverso un confronto ragionato tra i due linguaggi e con l’ausilio di alcuni snippet di codice....
Continue reading...
Dalla versione 1.5 in Java sono disponibili i varargs, un elegante strumento per avere metodi con zero o più parametri di uno specifico tipo. Ma i varargs presentano vantaggi così come qualche svantaggio: vediamo come usarli senza abusarne....
Continue reading...
Da meno di una settimana è finito Google I/O a San Francisco: anche quest’anno ci sono state molte novità interessanti! La cosa migliore è che anche chi non è andato dall’altra parte del mondo può rivedere tutti i talk sul canale YouTube . Fra i tanti talk uno che mi ha colpito è quello di Josh Bloch e Jeremy Manson....
Abbiamo già parlato più volte dell’interfaccia Java Serializable e di quanto è importante utilizzarla correttamente in application server J2EE in cluster. In questo post vediamo insieme un comportamento abbastanza peculiare e poco documentato che si presenta quando implementiamo questa interfaccia in una gerarchia di classi....
Continue reading...