Comparing Object-Oriented Languages Using Design Patterns

R.A. Shatnawi, L.H. Etzkorn, and W.E. Hughes, Jr.


Programming languages, performance, design patterns, object-oriented


The design patterns from the widely used Gang of Four book provide flexible, reusable designs that can be employed in many disparate application domains. Each of these well-known patterns employs important object-oriented techniques, including encapsulation and inheritance, and polymorphism (both compile time and runtime), as well as object instantiation and deletion. Because these patterns employ the object-oriented techniques in standard ways, they can serve as a good mechanism for comparing different object-oriented languages and for comparing the compilers for these languages. The authors compare different modern object-oriented languages and compilers using the standard Gang of Four design patterns as benchmarks. The languages compared were C++, Java, and the new .NET language, C#. The performances of C++ and Java were examined on both Linux and Microsoft Windows XP, whereas the performance of C# (a Microsoft programming language) was examined only on Microsoft Windows XP. Of particular interest was the performance of C#, as it is the newest language of the three, as well as the performance of all three object-oriented programming languages in a standard PC-based environment, with the commonly used PC operating systems, Linux and Microsoft Windows. Statistical techniques were employed in order to achieve strong language comparisons.

Important Links:

Go Back