OO Impelementation in C#

Finally, we comes with the C# language. C# supports all OO features mentioned in previous articles in language level. So, our implementation is quite straight forward. Just check the source code in my skydrive: http://cid-481cbe104492a3af.office.live.com/browse.aspx/share/dev/TestOO. In the TestCSObject-{date}.zip file.

Lastly, I drew a simple table to compare and summarize the OO supports in the four leading languages:

C/gtk+ C++/Qt Java C#
Basic Features
Encapsulation library good design Y Y
Inheritance library Y Y Y
Polymorphism function pointer Y Y Y
Advanced Features
Property library library reflection feature Y
Meta Info library library annotations attributes
Event Driven library(signals) library(signals/slots) events/listeners delegates/events/handlers
Measurements (Using a test application to demostrate above 5 features)
Compiler mingw32-gcc/3.4 mingw32-g++/3.4 JDK/1.6.20 VC#/2005
Library gtk+/2.16.6 Qt/4.3.5 Java/6.0 .NET/2.0
Source Size 19.09 KB 7.28 KB (+10.17 KB) * 13.18 KB 6.28 KB
Binary Size 32.69 KB 34.00 KB 9.48 KB 5.50 KB
Runtime Size 1.46 MB 2.00 MB 15.54 MB 23.84 MB
* Generated source

Leave a Comment

NOTE - You can use these HTML tags and attributes:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">