Bergel, Alexandre; Ducasse, Stephane (September 2005). Supporting Unanticipated Changes with Traits and Classboxes. Lecture Notes in Informatics(P-69), pp. 61-75. Bonner Köllen Verlag
Text
Berg05dTraitsClassbox.pdf - Published Version Restricted to registered users only Available under License Publisher holds Copyright. Download (258kB) |
On the one hand, traits are a powerful way of structuring classes. Traits support the reuse of method collections over several classes. However, traits cannot be used when specifying unanticipated changes to an application. On the other hand, classboxes are a new module system that supports the local redefinition of classes: a collection of classes can be locally extended with variables and/or methods and the existing clients do not get impacted by changes. However, an extension applied to a class by a classbox cannot be reused for other classes. This paper describes how combining Traits and Classboxes supports the safe introduction of crosscutting collaborations: safe because the existing clients of the classes do not get impacted, crosscutting because collaborations between several classes can be put in place in a unanticipated manner. In the resulting system, a collaboration is represented by a classbox and a role by a trait.
Item Type: |
Conference or Workshop Item (Paper) |
---|---|
Division/Institute: |
08 Faculty of Science > Institute of Computer Science (INF) 08 Faculty of Science > Institute of Computer Science (INF) > Software Composition Group (SCG) [discontinued] |
UniBE Contributor: |
Ducasse, Stephane |
Subjects: |
000 Computer science, knowledge & systems 500 Science > 510 Mathematics |
ISSN: |
1617-5468 |
ISBN: |
3-88579-398-9 |
Series: |
Lecture Notes in Informatics |
Publisher: |
Bonner Köllen Verlag |
Language: |
English |
Submitter: |
Anja Ebeling |
Date Deposited: |
30 Oct 2017 08:49 |
Last Modified: |
11 Apr 2024 16:11 |
BORIS DOI: |
10.7892/boris.104388 |
URI: |
https://boris.unibe.ch/id/eprint/104388 |