Comparing Object-Oriented Languages Using Design Patterns

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


Programming languages, performance, design patterns, objectoriented


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