Need help choosing a language

Started by
29 comments, last by jacmoe 9 years ago

Hey, I'm 17 and about to enter College, I took a Computer Science Course and I'm really interested in it.

I've been interested in learning how to create games but I'm not sure which program is best. Some say Unity is best but some say C# is too difficult to learn and C++ is the way to go. I've touched on Python earlier this year and it was easy to grasp but I heard you can't do much there. I heard too that for Android App making it would be Java, and I wish to do that too but probably after I learn C++/C#/Python or whichever is best.

Which programming language would be the best to pursue?

Thank you :)

Advertisement
Take advantage of your youthful ability to learn quickly and stick with what people say is hard to learn. It's foolish not to.
And Android is only Java if you decide not to use C++.


L. Spiro

I restore Nintendo 64 video-game OST’s into HD! https://www.youtube.com/channel/UCCtX_wedtZ5BoyQBXEhnVZw/playlists?view=1&sort=lad&flow=grid

I'd say get a book on C, once comfortable with your understanding of memory, dive into C++. I really liked the C book by K. N. King, A Modern Approach to C Programming 2nd Ed.

Why not learn both?

You're young and should soak it up like a sponge if you have an interest in it.

I find that C# can be seen as C++'s little brother, it is just as powerful but works slightly differently, e.g. You don't have to manually manage memory in C# where you might have to in C++ at times. Make sure you learn modern C++ and not old fashioned "C with objects" and you'll find they're very similar.

I've started with assembler, that helped me until today to always understand what happens on the CPU. I don't think it's useful to make a game in assembler, but understanding that CPUs load data into registers, etc. is really important. And there is no better way to learn than to try that by using assembler. Might be enough to learn that for 3 Months.

Then I'd suggest C and C++, if you manage to learn that, you can easily use java, c#, objective-c, php,... etc. doing it the other way around is somehow harder. At least when you see source from someone previously just worked with higher languages, his/her c++ looks not the way it should be.

And you should always know, nobody programs in c++ perfectly, it's a vast language and it's not bad what you know, it would be just bad if you'd stop to learn more.

Don't worry about what language you are going to choose - the language will choose you! :)

Every time you get exposed to a new language, you pick up ideas and new ways of thinking that will change the way you think about and use your current languages.

More important than the languages is the different paradigms the languages fall into, Object-Oriented (C# and Java, and to a lesser degree C++), functional (Haskell, Lisp/Scheme, OCaml, maybe Python).

If you really want a great mix then Python, C#, Lisp, Ruby and C++. Plain C is also a great idea, since you can actually create some extremely beautiful code with it.

Objective-C is probably also a good choice (money-wise; think Apple appstore..)

Just like people will answer "use Unity" when asking for a game engine, people will say "use C++" when asked for a language.

I answer: why choose one at all?

Just use whatever gets the job done. It's not a religion. :)

Too many projects; too much time

While learning C++ you'll find topics such memory & cache management, OOP, etc. in more detail. It worth to learn.

One of the things that we usually don't find on a C++ is multithreading (even the basics). I know that you're starting, but keep in mind that for this type of topic you'll need to get another type of books.

Most of the APIs out there have a well defined documentation for C++ (such DirectX e OpenGL); easy to read.

C/C++ are not easy. Takes time to understand because is a low-level language compared to Java.

C++ is the standard industry language.

C# and Java are pre programmed algorithms, where you need to install more crap on your PC.

Wont it nice to know how it realy works ?, and make your own "optimized" functions in C++ ?

Why re-invent the wheel ?, because i like to do so!

S T O P C R I M E !

Visual Pro 2005 C++ DX9 Cubase VST 3.70 Working on : LevelContainer class & LevelEditor

I've been interested in learning how to create games but I'm not sure which program is best

...

Some say Unity is best but some say C# is too difficult to learn and C++ is the way to go. smile.png

If you`re interested in game design (game logic, AI, hi level programming in general) learn c#, it will get you there faster.

However game design jobs are rare so If you`re interested in getting a job as a programmer, c++ is required.

My project`s facebook page is “DreamLand Page”

C# and Java are pre programmed algorithms, where you need to install more crap on your PC.
Wont it nice to know how it realy works ?, and make your own "optimized" functions in C++ ?

Why re-invent the wheel ?, because i like to do so!


Every windows pc since xp has come preinstalled with the .NET framework in some form, it's an integral part of the os so no need to "install extra crap on your pc".

Java on the other hand has always been a joke with regards to security, updates and having to install it every other week. Every other day there seems to be a new bug causing Firefox to disable the java plugin...

This topic is closed to new replies.

Advertisement