Università degli studi di Catania
Experiments towards a general implementation of some design patterns using aspect orientation
Abstract
dc:descriptionIn questa tesi viene presentata una nuova tecnica per l'implementazione di alcuni design pattern facendo uso della programmazione orientata agli aspetti e della riflessione computazionale. I linguaggi di programmazione orientati agli oggetti non sono in grado di supportare i design pattern a livello di costrutti del linguaggio, per cui il programmatore è costretto ad implementarli espressamente. Il codice che implementa un design pattern risulta quindi disperso su diverse classi che finiscono per mescolare al proprio codice quello relativo al design pattern. Ciò comporta diversi problemi di riusabilità, modularità e comprensibilità del codice. L'implementazione basata sulla programmazione orientata agli aspetti proposta in questa tesi elimina tali problemi. Un design pattern viene implementato in un aspetto che, intercettando un'annotazione usata per identificare le classi che giocano un ruolo per il design pattern, inserisce nel sistema il comportamento atteso dal pattern. L'analisi della letteratura ha portato alla definizione di quattro utili proprietà verificate dalle implementazioni proposte, non tutte verificate insieme negli approcci già esistenti. Le implementazioni di base sono presentate in varianti che ne migliorano i tempi di esecuzione. Le versioni dei design pattern implementate sono confrontate con le equivalenti implementazioni orientate agli oggetti. Le implementazioni proposte possono essere usate anche in applicazioni esistenti scritte ad oggetti convertendole nell'equivalente versione ad aspetti proposta.
Degree
thesis:*- Grantor dc:publisher
- Università degli studi di Catania
- Year dc:date
- 2011
Author and committee
dc:creator, dc:contributor.*- Author dc:creator
-
- GIUNTA, ROSARIO GRAZIANO
- Contributors dc:contributor
-
- PAPPALARDO, Giuseppe
- CANTONE, Domenico
Subjects
dc:subject × 1Rights
dc:rights- Statement dc:rights
-
- info:eu-repo/semantics/openAccess
- license:PUBBLICO - Pubblico con Copyright
- license uri:iris.PUB02
- Language dc:language
- eng
Identifiers
dc:identifier.*- Handle dc:identifier
- https://hdl.handle.net/20.500.11769/585674
- OAI identifier oai:identifier
- oai:www.iris.unict.it:20.500.11769/585674