Skip to Main content Skip to Navigation
Conference papers

Empirical Study of Programming to an Interface

Abstract : A popular recommendation to programmers in object-oriented software is to "program to an interface, not an implementation" (PTI). Expected benefits include increased simplicity from abstraction, decreased dependency on implementations , and higher flexibility. Yet, interfaces must be immutable, excessive class hierarchies can be a form of complexity, and "speculative generality" is a known code smell. To advance the empirical knowledge of PTI, we conducted an empirical investigation that involves 126 Java projects on GitHub, aiming to measuring the decreased dependency benefits (in terms of cochange).
Document type :
Conference papers
Complete list of metadata

Cited literature [18 references]  Display  Hide  Download
Contributor : Lse Lse Connect in order to contact the contributor
Submitted on : Thursday, November 7, 2019 - 1:57:05 PM
Last modification on : Friday, December 11, 2020 - 6:44:06 PM
Long-term archiving on: : Sunday, February 9, 2020 - 12:20:12 AM


Fuhrman 2019 19359.pdf
Files produced by the author(s)


  • HAL Id : hal-02353681, version 1



Benoît Verhaeghe, Christopher Fuhrman, Latifa Guerrouj, Nicolas Anquetil, Stéphane Ducasse. Empirical Study of Programming to an Interface. Automated Software Engineering (ASE 2019), Nov 2019, San Diego, United States. ⟨hal-02353681⟩



Record views


Files downloads