Saturday, April 30, 2011

Why C programming Language is a powerhouse.

In this era of modern programming language, where there are like tons of programming languages available to computer professionals. C programming language which was developed like 40 years ago is still a persistent entity.
I know in this new world new languages has taken over the programming world. Languages like C#, Java, Python or others. May be (new) "people" don't like C/C++ anymore (I should be precise). But if you look at most core part of modern software system, they are still coded in C /C++. I will support my argument with following famous software.
Gecko :     This is the layout engine of Mozilla FireFox web browser. So this is the heart of FireFox and it is still written in C.
Android  : To days most famous mobile operating system. Core part of android is written in C/C++.
VLC player : Most preferred Video player, guess what its written in C/C++.

Doom engine : Id software Doom game engine, written in C/C++.

Half life engine : Written completely in C, C++ , the result? Well everyone knows ;)

Oracle DB : The Oracle Database management system, Owned in C/C++.

U Torrent  : Our beloved torrent client , written completely in C/C++
OK I think this is enough, the list is really long. But why I mentioned these examples? As you can see I chose them really carefully. How?
These example represents different programming scenarios. So as you can see C/C++ can tackle from web development system to database management system. The vary versatility of C/C++ is what it makes C a great programming languages. The code that C produces is far superior to any other language. The performance comparison is not even close. I know some languages specialize in certain part of programming (Like LISP excels in string handling), but C is still very very close to them. The C code is very close to even assembly languages. That is why most core system are still coded in C.
Languages like C#, java , python may have great programming supports in terms of API or libraries. These languages may also feature fancy stuff like garbage collection or dynamic variable types. But the raw powerhouse of C language is what it sets it apart from other language. (Most fast drivers still prefer the manual gear system then auto gears. right? )
Not to mention that while you have worked with C programming, it is very easy to migrate to other languages.
"At last there are only two type of programming languages in world. One is the language people always bitch about and other nobody uses".

No comments: