Mostrar el registro sencillo del ítem

dc.contributor.author
Vidal, Santiago Agustín  
dc.contributor.author
Bergel, Alexandre  
dc.contributor.author
Diaz Pace, Jorge Andres  
dc.contributor.author
Marcos, Claudia Andrea  
dc.date.available
2018-09-06T18:50:12Z  
dc.date.issued
2016-11  
dc.identifier.citation
Vidal, Santiago Agustín; Bergel, Alexandre; Diaz Pace, Jorge Andres; Marcos, Claudia Andrea; Over-exposed classes in Java: An empirical study; Pergamon-Elsevier Science Ltd; Computer Languages Systems & Structures; 46; 11-2016; 1-19  
dc.identifier.issn
1477-8424  
dc.identifier.uri
http://hdl.handle.net/11336/58571  
dc.description.abstract
Java access modifiers regulate interactions among software components. In particular, class modifiers specify which classes from a component are publicly exposed and therefore belong to the component public interface. Restricting the accessibility as specified by a programmer is key to ensure a proper software modularity. It has been said that failing to do so is likely to produce maintenance problems, poor system quality, and architecture decay. However, how developers uses class access modifiers or how inadequate access modifiers affect software systems has not been investigated yet in the literature. In this work, we empirically analyze the use of class access modifiers across a collection of 15 Java libraries and 15 applications, totaling over 3.6M lines of code. We have found that an average of 25% of classes are over-exposed, i.e., classes defined with an accessibility that is broader than necessary. A number of code patterns involving over-exposed classes have been formalized, characterizing programmers' habits. Furthermore, we propose an Eclipse plugin to make component public interfaces match with the programmer's intent.  
dc.format
application/pdf  
dc.language.iso
eng  
dc.publisher
Pergamon-Elsevier Science Ltd  
dc.rights
info:eu-repo/semantics/openAccess  
dc.rights.uri
https://creativecommons.org/licenses/by-nc-sa/2.5/ar/  
dc.subject
Class Accessibility  
dc.subject
Java Systems  
dc.subject
Modularity  
dc.subject
Over-Exposed Classes  
dc.subject.classification
Ciencias de la Computación  
dc.subject.classification
Ciencias de la Computación e Información  
dc.subject.classification
CIENCIAS NATURALES Y EXACTAS  
dc.title
Over-exposed classes in Java: An empirical study  
dc.type
info:eu-repo/semantics/article  
dc.type
info:ar-repo/semantics/artículo  
dc.type
info:eu-repo/semantics/publishedVersion  
dc.date.updated
2018-09-05T15:54:12Z  
dc.journal.volume
46  
dc.journal.pagination
1-19  
dc.journal.pais
Estados Unidos  
dc.journal.ciudad
Nueva York  
dc.description.fil
Fil: Vidal, Santiago Agustín. Consejo Nacional de Investigaciones Científicas y Técnicas. Centro Científico Tecnológico Conicet - Tandil. Instituto Superior de Ingeniería del Software. Universidad Nacional del Centro de la Provincia de Buenos Aires. Instituto Superior de Ingeniería del Software; Argentina  
dc.description.fil
Fil: Bergel, Alexandre. Universidad de Chile; Chile  
dc.description.fil
Fil: Diaz Pace, Jorge Andres. Consejo Nacional de Investigaciones Científicas y Técnicas. Centro Científico Tecnológico Conicet - Tandil. Instituto Superior de Ingeniería del Software. Universidad Nacional del Centro de la Provincia de Buenos Aires. Instituto Superior de Ingeniería del Software; Argentina  
dc.description.fil
Fil: Marcos, Claudia Andrea. Consejo Nacional de Investigaciones Científicas y Técnicas. Centro Científico Tecnológico Conicet - Tandil. Instituto Superior de Ingeniería del Software. Universidad Nacional del Centro de la Provincia de Buenos Aires. Instituto Superior de Ingeniería del Software; Argentina. Universidad Nacional del Centro de la Provincia de Buenos Aires. Facultad de Ciencias Exactas; Argentina  
dc.journal.title
Computer Languages Systems & Structures  
dc.relation.alternativeid
info:eu-repo/semantics/altIdentifier/doi/https://doi.org/10.1016/j.cl.2016.04.001  
dc.relation.alternativeid
info:eu-repo/semantics/altIdentifier/url/https://www.sciencedirect.com/science/article/pii/S1477842415300531