Click here to Skip to main content
15,885,757 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
See more:
Hello Everyone,

I need some advice as to which order I should learn the following:
C, C++, C#, and Java.

I already have the basics from C#.

Sincerely

Juan
Posted

Strictly any order. I'm serious. In principle, it's even possible to learn some of them in parallel. It could be confusing, but possible.

I would advise to lean C++ and C after C# and Java, not before, but some may disagree.

—SA
 
Share this answer
 
v2
Comments
jvaca1 26-Jan-16 21:48pm    
Sorry,
I meant to give you a 5 star but it did four and i don't know how to change it. If you'd like you can delete this one and re-post it so i can give you a five star.
I feel really bad :(
Sergey Alexandrovich Kryukov 26-Jan-16 22:11pm    
Thank you very much, no need to feel bad. No problem. Any time, you can change your vote, if you want. You only have to reload (refresh) the same page.
—SA
If you have basic of C#, then it is very easy to learn C++, just syntax is difference but all concept are same. C is middle level language and it has bit different than C++/C# it contains Pointers concept.
I will categories languages as C at one side and C++, C#, Java at other side.
The sequence will be C, C++, C#, Java
 
Share this answer
 
Comments
BillWoodruff 27-Jan-16 3:43am    
"If you have basic of C#, then it is very easy to learn C++"

That is like saying that if you know how to drive a car with automatic transmission, then it's easy to learn to drive a Formula I race-car :)
I think "what you should do" is totally dependent on: who you want to be; what you enjoy, or have a 'passion' for; what specific goals you may have for the future in terms of employment, income, security, etc.

If your goal is to become a computer scientist; that's one path; if your goal is to become a creator of complex applications, perhaps on one major OS platform like Windows, that's another path; if your goal is to become a well-rounded programmer who can create complex web-sites, or web-apps, using back-end databases, multi-tasking, compelling user-interfaces ... another path. Becoming a game-programmer or multi-media programmer is, perhaps, another path. And, then there are numerous specialties, like device-driver writing, programmable-logic chip coding, etc.

Depending on your goals, mathematics, 3d graphics, in-depth mastery of one, or a few, computer languages, may have different priorities, and different choices of languages to emphasize.

Depending on your goals, studying very diverse computer languages from the point of understanding essential algorithms, and algorithmic complexity theory, may have first priority. Or, your goals may indicate in-depth study/practice in one programming language.

If your goal is employment within a relatively short period of time, that's another big possible influence/constraint.

I see (in your profile) you have experience in Clojure, and I think exposure to a Lisp-like language is a great benefit in helping you gain insight into other languages you will study.

So, as Microsoft asked in its 1996 ad-campaign: "where do you want to go today?" :)
 
Share this answer
 

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900