Abstract: The Object-Oriented (OO) programming paradigm has claimed numerous advantages, including enhanced understandability, maintainability and reusability of OO software. However, these advantages do not automatically apply when an OO approach to software development is adopted. The features provided in OO languages such as C++ and Java can help to facilitate the development of understandable, maintainable and reusable software. However, systems built from different languages may have structural differences which may in turn impact the understandability, maintainability or reusability of the systems. In this paper an empirical study is presented which utilises software metrics to examine the structure of software systems written in C++ and Java. The findings suggest that C++ systems may be more difficult to understand or maintain than Java systems and that information hiding principles are applied only to a limited extent in the development of OO software.
PPIG 2009 - 21st Annual Workshop
Exploring the Differing Usages of Programming Language Features in Systems Developed in C++ and Java