Python
and I dont know where you heard to go from C to C++ to Java as that doesn't make much sense.
If you master the concepts of programming you should be able to switch between languages fairly easily.
If its for games then no doubt c# (csharp) is the language for you. if its for apps ide say java and c and c++ are pretty versatile with both.
This may come down to personal preference but have a look at phyton and pygame and compare it to C#. It's easier.
Thanks for the awesome post.I hate to say it, but this thread so far is somewhat full of ignorance/lack of knowledge.
I do not feel like making a long post, but here it comes.
C is compilable for any platform that has a compiler or cross compiler. (yes windows included)
C++ is a super set of C, it is not backwards compatible, but it can use/incorporate C.
These were the only 2 mentioned compiled languages.
Java is similar to C++ not C, C does not have OOP nor classes.
C# is similar to Java and C++.
Now the main difference is that Java and C# are interpreted languages, and do not run natively, they use a Virtual Machine to run. (compiled to byte code)
Python is a scripting language, which is similar to java and C# in the respects of a virtual machine, but it is not compiled at all. Same with lua and perl and many others (javascript included).
C# is a bad choice for games, since it is Windows only. And has many portability issues, since it is made by M$.
Java is easily portable, you dont have to do anything, since it is ran in a VM you just run it on any platform u want.
C/C++ must have platform specific code changed to work on multiple machines.
So now with that info maybe you can make a better choice, but heres my advice.
Pick 1 language and learn it and its syntax, then continue learning, and learning programming practices (these are language independent, such as loops, variables, conditionals, etc). Then after you have a grasp of the concept of programming, learning a new language is a matter of learning its syntax (aka styling).
Personally, I started in C/C++, which is jumping into the deep end of the pool since there is the most room for error. But I believe it was for the best, as I now understand most of the core programming features, some that newer abstracted languages such as java and C# do not support.
So it all depends on what you plan on doing.
And go ahead and ask me more question, should you have any.
Thanks for the awesome post.
I'm primarily trying to get into programming, because its possibly a field i'm willing to explore as a career. But right now, i just want to code relatively basic windows applications for day to day convieniance. Then i'd like to slowly edge towards a portable device, whatever it may be when i've learnt the lesson. Such as the iPhone.
With this in mind, what would you recommend? I just really want to know how hard it is to program something decent.
Thanks again.![]()
ANY language can be used for any platform that has a targeted compiler. C and C++ are the most common.C is compilable for any platform that has a compiler or cross compiler. (yes windows included)
OOP is a way of programming and it is possible to do OO design and programming in C although it doesn't inherently support it.Java is similar to C++ not C, C does not have OOP nor classes.
C# is definitely not interpreted and is usually compiled to CIL byte which is JIT compiled to machine code by the compiler. The standards don't state that it can't be compiled to machine code as well. Wiki link)Now the main difference is that Java and C# are interpreted languages, and do not run natively, they use a Virtual Machine to run. (compiled to byte code)
C# is not owned by MS, is not Windows only and isn't a bad choice for games however it doesn't have very many supporting platforms. Look at Mono and Tao framework for Applications and games which run on Linux and Mac.C# is a bad choice for games, since it is Windows only. And has many portability issues, since it is made by M$.
Any platform that has a JVM.Java is easily portable, you dont have to do anything, since it is ran in a VM you just run it on any platform u want.
Thanks to XNA framework and toolset and the high level nature of C#, it is good language and base to start programming games especially as they can also be executed on 360.
xna has horrible portability to other computers, i've had to install visual c#/xna again just to get any of my programs to run(all the programs that are supposed to allow xna programs to run on other computers won't work), however maybe i wasn't doing things correctly.
Did you compile in release mode before distribution? Does the PC have the latest version of DirectX installed?
jparshy said:Also, I think there is an XNA Redistributable runtime binary that you can bundle with your application for end-users.
C# is not owned by MS, is not Windows only and isn't a bad choice for games however it doesn't have very many supporting platforms. Look at Mono and Tao framework for Applications and games which run on Linux and Mac.
It was designed by MS but is an open standard.
Thanks to XNA framework and toolset and the high level nature of C#, it is good language and base to start programming games especially as they can also be executed on 360.
Thanks for the awesome post.
I'm primarily trying to get into programming, because its possibly a field i'm willing to explore as a career. But right now, i just want to code relatively basic windows applications for day to day convieniance. Then i'd like to slowly edge towards a portable device, whatever it may be when i've learnt the lesson. Such as the iPhone.
With this in mind, what would you recommend? I just really want to know how hard it is to program something decent.
Thanks again.![]()