Method overloading and overriding cause encapsulation flaw: an experiment on assembly of heterogeneous components

  • Authors:
  • Antoine Beugnard

  • Affiliations:
  • ENST Bretagne, Brest cedex

  • Venue:
  • Proceedings of the 2006 ACM symposium on Applied computing
  • Year:
  • 2006

Quantified Score

Hi-index 0.00

Visualization

Abstract

Based on an experiment using three languages under .NET, this paper argues that the semantic differences between these languages regarding method overloading and overriding give rise to significant complexity and break encapsulation. We first recalls the various interpretations of overriding and overloading in object oriented languages through what we call language signatures. Then, we realize an experimentation with .NET components coded in different programming languages in order to observe the global behavior. From this, we show that overriding and overloading are not compatible with a key property of components: encapsulation. We conclude that, in the current state of the art, in order to build predictable assembly, components must expose their internal structure! We propose a solution to this problem.