Good afternoon everybody,

today i want to write about of one topic that has been in debate for many years. And if you are new in to the programming world, i bet that you asked which one is better? or How do i choose between Java and C?, etc.

So in this post i will try to cover as much as i can. From my lectures in college to my job experience.

I am going to start with C. Why? Because that was my first programming language.

C for me is like the godfather of all programming languages. Wherever you are if you say something like: “I started coding with C” is like “waaow”.

For example:

C is a language that is function oriented.
When you want to execute a program you have to compile for every architecture.
If we want to manipulate the memory address we need “pointers”.
Does not support graphics, we need to add a library.
Char is a 8 bit ASCII (Usually).
The basic programming unit is the function.
Low level language.
And we could stay all the post talking about C, i wrote some of the characteristics, but they are not the only ones.

Java in the other hand has a lot of uses, for example the classic Java stuff that we learn in college, but for example there is something called JEE (Java Enterprise Edition), also the Java that we use when we want to create an Android App. As you can see, Java is almost everywhere and this is why:

Java is a Object Oriented language.
Is an interpreted language.
Is a high level language.
The garbage collector is the one who handles the memory managment.
The way Java handles the exceptions or the errors.
Method Overloading, we can have two or more functions with the same name.
So now, that we have seen some of the differences between Java and C. We can choose one of them as our favorite. In my opinion i think that Java is the best, i mean i am not talking about performance, security, etc. I choose Java because is a language that almost any person can read it. C is a little bit more complex, because it has pointers, you have to be aware of the memory location, etc.

Also, when we are working on a application, that is going to be in the market or a large company is going to use it, Java is the answer. And not only Java i mean, for enterprise applications, we can use JEE. I had an experience with these subject in my job. In other post i will talk about it.

C is well known as a programming language that is used for example in processors like Intel also in the drivers of a peripheral and finally the perfect OS, Linux. Linux use C in the kernel.

If you want to discuss about this subject, we can talk about it. 🙂