Take me back!! I want my CSS!! Click me to get back :)

C, C++, C# and Objective C

C, C++, C# and Objective C are a set of similarly-named programming languages, some of which are related and some of which are not.

Back in 1969, the programming language C was created at Bell Labs by a computer scientist named Dennis Ritchie. Ritchie based C off of an earlier language called B. C spread to wide use quickly and is arguably the most popular programming language ever made; one big reason is that programs written in C can run on all sorts of different operating systems (Macs vs. Windows, for example) with only small tweaks.

These days, C is used when you need something that runs quickly without using much memory. This usually means behind-the-scenes code, like the code that lets your keyboard or monitor talk to the rest of your computer (a.k.a. device drivers). Since it’s so common, though, you’re going to be finding C all over the place!

C++ was a programming language developed in 1979 by a Danish programmer with the amazing name Bjarne Stroustrup. It was originally called “C with Classes,” and was renamed C++ in 1983. ++ is shorthand for adding 1 to a number in programming, so C++ roughly means “one better than C.” We might just plain call that D, but because it was so closely related to C he went with C++ instead.

C++ added a ton of new features to C, designed to make programming more efficient and give the developer more options on how they’d like to code. The biggest addition is something called object oriented programming. The basic idea of object oriented programming is that all of your code is arranged in little bundles of data and actions, instead of a spread-out jumble.

For example, if I’m writing a program about a bike and a person, I’d have an object called bike and an object called person, and write things like bike->color, bike->brand, and person->name to get information about them. Why’s this important? Just like you might keep all of your bills in one drawer and your love letters in another drawer, a lot of programmers find this sort of organization helpful. We’ll write a whole email on object oriented programming soon, we promise!

Thanks to object oriented programming and other additions, it’s easier to write complex programs in C++ than plain C. This makes C++ popular for complex software packages – most of Windows is written in C++. With all of the additions, though, C++ has a little more overhead in terms of things like memory usage and file size. C++ is the third most popular programming language, behind C and Java.

Objective C was created by two guys, Brad Cox and Tom Love, at their company Stepstone in 1983, but has recently become very popular as the driving force behind OS X and iPhone apps. It’s a “superset” of the C language – it can do everything C can, but also has a few extra features. These features were pulled from a language called Smalltalk, and like C++, were mainly focused on making the language more object-oriented.

C# came out of Microsoft in 2001, intended as a new object-oriented language. It isn’t actually based on C – it was intended to be “C-like,” but the two languages didn’t end up having much in common. C# was originally code-named “Cool,” but Microsoft was on a roll with adding # to letters (A#, F#) so they went ahead and named it C#.

C#, like C++, can be used for pretty much anything. Since it was produced by Microsoft it ends up powering a lot of Windows programs also, but it’s also an option for doing web development on a Windows-based web server.

All in all, C spawned a lot of new languages. You can imagine C++ and Objective C as C’s sophisticated offspring, while C# is the neighbor kid who’s always hanging around the house.

Cocktail Party Fact

We can cover most of the alphabet with programming languages: A, B, D, E, F, G, J, K, L, M, Q, R, S, and T are your basics, and then you can throw in P#, J#, F# .NET, X++, C–, A++ and a plenty more!

Want more articles like this?

Sign up to get the most recent tech news, tips and career advice.

  • mucho

    thanks :)

  • eii

    great article, to the point, well done!

  • Tak Lee

    It was great! Cool~

  • DISQUS

    which is the best?

  • rightfold

    It’s “Objective-C”, not “Objective C”.

  • Nick

    Thank you very much, you made it a little more clear for me.

  • cikyanzone
  • Mikant

    > but Microsoft was on a roll with adding # to letters (A#, F#)
    aren’t u confused with the fact a# & f# came a ‘few’ years later than c# ?… nice article, but this…

  • JP

    That was the most genuine way of explaining the reason for object orientiation.

  • AwesomeCat100

    “imagine C++ and Objective C as C’s sophisticated offspring, while C# is the neighbor kid who’s always hanging around the house.” Lol that was actually the perfect way to describe them.

  • Peter Son

    Your information about
    c# is really interesting and innovative. Also I want you to share latest
    updates about c#. Can you update it in your website? Thanks for sharing

    Dot
    net training institute in Chennai

  • Raheel

    First time I read an article explaining things so clearly. Good luck skill crushers

  • http://www.aquademica.se/mogel/ Mögel

    Interesting to see … thank you it’s well done :)

    http://www.aquademica.se
    http://www.visualrank.se

  • http://www.visualrank.se/ VisualRank

    mögel Interesting to see … thank you it’s well done :)

  • Sri Priya

    Good Topic for beginners (C, C++, and HTML5 )

    by

    Sri Priya ( HTML5 Trainer in Chennai)

  • Daniel Illsley

    C# Is Based On Java And C Is Based On B C++ And Objective C Are Based
    On C

x
Wondering if TECH might be right for you?

Sign up for FREE for weekly updates & fun lessons!