mercoledì 17 ottobre 2007

annotations speciali associate a metodi "mutators" e "observers" per mostrare una prova empirica della sostituibilita' tra oggetti

Ho creato un nuovo progetto su esperimenti relativi alla nozione object oriente di sottoclasse, sostituibilità usando le annotazioni di java 5.

http://testlspjava5.googlecode.com/

I metodi possono distinguersi in diversi tipi, tra cui, mutators ed observers.
Grosso modo: i mutators modificano lo stato dell'oggetto, gli observer ne ispezionano lo stato.
Sono associabili, tramite annotazioni, per ogni mutator, degli "instance genertor" che generano una sequenza ripetibile di n-pla di parametri applicabili a tale metodo mutator.

Viene così simulata, sotto il controllo di junit, una computazione "casuale" ma ripetibile, che coinvolge la classe e che agisce sui mutators, creando dunque una sequenza di stati per un generico oggetto della classe.
Viene ripetutta una seconda volta la stessa computazione usando la sottocalsse anziché la classe.

La prova empirica della sostituibilità sta nel fatto che la sequenza di stati della prima computazione (che riguarda la classe) è equivalente alla seconda sequenza di stati della computazione (che riguarda la sottoclasse).

L'equivalenza è definita in termini di observers, ovvero, ricorsivamente, di equivalenza di stato di tutti i valori/oggetti restitui dagli observers.

Nessun commento:

Informazioni personali

La mia foto
I have been coding from the old C64 times. Studied Computer Sciences at Milan University. I also worked there in technical operations. Many years of experiences in coding Java and C#, desktop and web applications, with practices like unit testing. I used to play with 3d graphics in architecture recently with Blender 3d. Now I look for support related to some projects I am working on, oriented in automation in tourism related services, using functional programming framework, specifically F# and Suave.IO. email
tonyx1 (at) gmail.com github https://github.com/tonyx