luglio 2010 Blog Posts
Il primo linguaggio ad oggetti è stato Smalltalk aveva alcune caratteristiche che quasi nessun linguaggio moderno possiede ancora.
Un'importante differenza è che la classe è un oggetto. Infatti per creare una nuova classe non ho un meccanismo speciale come in C#, ma semplicemento chiamo un metodo di un oggetto.
Esempio supponiamo di voler creare la classe Dog:
Object subclass: #Dog
instanceVariableNames: ''
classVariableNames: ''
poolDictionaries: ''
category: 'PBE'
In questo caso viene mandato il messaggio subclass (analogo alla chiamata di un metodo) all'oggetto Object. Analogamente se voglio creare un oggetto di tipo Dog manderò il messaggio new all'oggetto classe Dog....
Partirò da una citazione dell'articolo A Laboratory For Teaching Object-Oriented Thinking:
One of the distinguishing features of object design is that no object is an island. All objects stand in relationship to others, on whom they rely for services and control. The last dimension we use in characterizing object designs is the collaborators of an object. We name as collaborators objects which will send or be sent messages in the course of satisfying responsibilities. Collaboration is not necessarily a symmetric relation.
La parte iniziale è un concetto fondamentale: gli oggetti vanno considerati...
Leggere sul monitor del PC a lungo mi stanca la vista allora ho deciso di acquistare un e-book reader con tecnologia e-ink. Ho deciso di scartare l'ipotesi IPad perchè ha lo schermo retroillumanto e quindi avrei lo stesso problema di lettura che sul video del PC.
La mia scelta è caduta sul Kindle DX graphite per la dimensione dello schermo poco più piccola di 10 pollici. In questo modo si riesce a leggere agevolmente un PDF senza bisogno di zoom.
Un'altro aspetto che mi ha fatto propendere per il Kindle è stato la connessione 3G gratuita con la quale si può accedere...
Per stimare o sviluppare una user story a volte è necessario documentarsi su aspetti tecnici che non padroneggiamo. Nel mondo agile questa pratica viene chiamata spike
Uno degli aspetti che si sottovalutano degli spike è che con il tempo costituiscono una knowledge base molto utile per lo sviluppatore. Un altro aspetto importante è che non vengono fatti esperimenti sul codice di produzione.
Personalmente gli spike li committo in un repository chiamato Spikes cercando di dare dei nomi significativi alle varie solution in modo da poterli ritrovare facilmente in seguito...