A Data Abstraction Alternative to Data Structure/Algorithm Modularization

  • Authors:
  • Murali Sitaraman;Bruce W. Weide;Timothy J. Long;William F. Ogden

  • Affiliations:
  • -;-;-;-

  • Venue:
  • Selected Papers from the International Seminar on Generic Programming
  • Year:
  • 1998

Quantified Score

Hi-index 0.00

Visualization

Abstract

Modularization along the boundaries of data structures and algorithms is a commonly-used software decomposition technique in computer science research and practice. When applied, however, it results in incomplete segregation of data structure handling and algorithm code into separate modules. The resulting tight coupling between modules makes it difficult to develop these modules independently, difficult to understand them independently, and difficult to change them independently. Object-oriented computing has maintained the traditional dichotomy between data structures and algorithms by encapsulating only data structures as objects, leaving algorithms to be encapsulated as single procedures whose parameters are such objects. For the full software engineering benefits of the information hiding principle to be realized, data abstractions that encapsulate data structures and algorithms together are essential.