Empirical Study of Programming to an Interface - Inria - Institut national de recherche en sciences et technologies du numérique Access content directly
Conference Papers Year : 2019

Empirical Study of Programming to an Interface


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).
Fichier principal
Vignette du fichier
Fuhrman 2019 19359.pdf (230.9 Ko) Télécharger le fichier
Origin : Files produced by the author(s)

Dates and versions

hal-02353681 , version 1 (07-11-2019)


  • 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⟩
70 View
158 Download


Gmail Facebook X LinkedIn More