State Based Encapsulation for Modular Reasoning about Behavior-Preserving Refactorings

@inproceedings{Banerjee2013StateBE,
  title={State Based Encapsulation for Modular Reasoning about Behavior-Preserving Refactorings},
  author={Anindya Banerjee and David A. Naumann},
  booktitle={Aliasing in Object-Oriented Programming},
  year={2013}
}
A properly encapsulated data representation can be revised for refactoring or other purposes without affecting the correctness of client programs and extensions of a class. But encapsulation is difficult to achieve in object-oriented programs owing to heap based structures and reentrant callbacks. This chapter shows that it is achieved by a discipline using assertions and auxiliary fields to manage invariants and transferrable ownership. The main result is representation independence: a rule… CONTINUE READING
BETA

Citations

Publications citing this paper.

References

Publications referenced by this paper.

Similar Papers

Loading similar papers…