Repository logo
 
Publication

Composing classes: roles vs traits

dc.contributor.authorBarbosa, F.S.
dc.contributor.authorAguiar, Ademar
dc.date.accessioned2013-12-02T11:00:58Z
dc.date.available2013-12-02T11:00:58Z
dc.date.issued2013
dc.description.abstractCode replication has significant drawbacks in system maintenance. Code replication can have its origins in the composition limitations of the language. Several proposals have tried to overcome these limitations. A popular one is traits. However, traits do not support state or visibility control. Static roles are also a way of composing classes that has the benefits of traits and offers state, visibility control and other advantages as block renaming. We compare both approaches on how they are used to compose classes, and how they can be used to reduce code replication caused by composition limitations. As a case study we will compare how both approaches can reduce code replication by detecting and removing code clones within the JHotDraw framework. Results show that roles are capable of reducing a larger amount of replicated code than traits.por
dc.identifier.citationBARBOSA, Fernando Sérgio; AGUIAR, Ademar (2013) - Composing classes: roles vs traits. In International Conference on Evaluation of Novel Approaches to Software Engineering, 8, Tours, 4 a 6 de julho. [S. l.: s.n]. p. 1-11por
dc.identifier.urihttp://hdl.handle.net/10400.11/2119
dc.language.isoengpor
dc.peerreviewedyespor
dc.subjectRolespor
dc.subjectTraitspor
dc.subjectCode reusepor
dc.subjectModularitypor
dc.subjectCompositionpor
dc.subjectInheritancepor
dc.titleComposing classes: roles vs traitspor
dc.typejournal article
dspace.entity.typePublication
oaire.citation.conferencePlaceTourspor
oaire.citation.title8th International Conference on Evaluation of Novel Approaches to Software Engineering (ENASE2013)por
person.familyNameAguiar
person.givenNameAdemar
person.identifierAAA-1740-2020
person.identifier.ciencia-idC71D-0BB3-C261
person.identifier.ciencia-id1C1D-15E0-1F48
person.identifier.orcid0000-0003-3683-5803
person.identifier.orcid0000-0002-4046-4729
person.identifier.scopus-author-id35753041400
rcaap.rightsrestrictedAccesspor
rcaap.typearticlepor
relation.isAuthorOfPublicatione2f584dc-62c5-4b2c-ac37-41011b1245ac
relation.isAuthorOfPublication6b71ec83-5a1c-4f6e-9021-6eec52df70e6
relation.isAuthorOfPublication.latestForDiscoverye2f584dc-62c5-4b2c-ac37-41011b1245ac

Files

Original bundle
Now showing 1 - 1 of 1
No Thumbnail Available
Name:
ENASE2013_ComposingClassesRolesXTraits (cr).pdf
Size:
118.74 KB
Format:
Adobe Portable Document Format
License bundle
Now showing 1 - 1 of 1
No Thumbnail Available
Name:
license.txt
Size:
2.02 KB
Format:
Item-specific license agreed upon to submission
Description: