Implementing design patterns in Object Teams

SUMMARY This paper presents a study of the support for modularity of Object Teams, an aspect‐oriented language backwards compatible with Java. The study is based on implementations in Object Teams of two complete collections of the Gang‐of‐Four design patterns. An analysis of the implementations is...

Full description

Saved in:
Bibliographic Details
Published in:Software, practice & experience Vol. 43; no. 12; pp. 1519 - 1551
Main Authors: Monteiro, Miguel P., Gomes, João
Format: Journal Article
Language:English
Published: Bognor Regis Blackwell Publishing Ltd 01.12.2013
Wiley Subscription Services, Inc
Subjects:
ISSN:0038-0644, 1097-024X
Online Access:Get full text
Tags: Add Tag
No Tags, Be the first to tag this record!
Description
Summary:SUMMARY This paper presents a study of the support for modularity of Object Teams, an aspect‐oriented language backwards compatible with Java. The study is based on implementations in Object Teams of two complete collections of the Gang‐of‐Four design patterns. An analysis of the implementations is provided, in terms of advantages of Object Teams over Java with respect to modularity, module composition and reuse. We present a systematic comparison with a functionally equivalent collection of implementations in AspectJ, regarding five modularity properties: locality, reusability, composition transparency, (un)pluggability and extensibility. Object Teams yields broadly comparable results in terms of the first four properties. Object Teams yields better results as regards flexible module extensibility, composition at the instance level and enclosing multiple pattern participants into a larger, cohesive module. AspectJ is more successful than Object Teams in the Singleton pattern because of its ability to intercept constructor events. Copyright © 2012 John Wiley & Sons, Ltd.
Bibliography:ark:/67375/WNG-9818K76G-K
FCT/MCTES and FEDER - No. PRIA (UTAustin/CA/0056/2008); No. GasPar (PTDC/EIA-EIA/108937/2008)
istex:3E7E5D0C0FC32E47EA706492486BB35EF4D5FC63
ArticleID:SPE2154
ObjectType-Article-1
SourceType-Scholarly Journals-1
ObjectType-Feature-2
content type line 14
ObjectType-Article-2
ObjectType-Feature-1
content type line 23
ISSN:0038-0644
1097-024X
DOI:10.1002/spe.2154