• Log in or sign up for an account here: https://www.sythe.org/login

Starting off with Programming...

PioneerDDJSX1234

Newcomer
Banned
Joined
Jan 30, 2014
Sythe Gold
0
Messages
15
Starting off with Programming...
Just been looking around for quite a while now, and I really got interested in programming, for games/apps.

Options:

1) C++
2) C#
3) Java

I read C++ is the most 'complex' language out of the 3, and if you know it, you can master C# and/or Java?

C#, I hear is much easier, and is compatible with Unity3D...I don't know if that's the best engine, but it's the one I've heard about the most.

Half of people say C# is a more modern language, but C++ is the base root.

I don't know what Java is used for, please elaborate.

Last: What is the difference between Java and JavaScript?

Is Java dead?

What are the best game engines for newbies like me to start off?
 
Starting off with Programming...
You've been hearing rather misguided advice I think. Keep in mind that a lot of this is strictly my own opinion based on my own experiences.

C++ isn't really more "complex" than C# or Java. It just appears that way because of the fact that it is a much more what is called lower-level or system-level programming language. For example, a huge amount of the Windows operating system itself was probably written in C or C++ (C++ is a superset of C and is in general backwards compatible with C, think almost like C version 2 but not quite).

In other words, C++ feels more complicated because you have to learn a bit more about how the computer actually works before it becomes overly useful. I admit, it's a bit more to learn, but it's not actually that difficult if you learn it properly and in proper order. Half of the problem with learning C++ is a lot of people instruct you to learn it - figuratively speaking - ass-backwards, which makes it hard to develop useful applications as you then need to go back and learn again.

C++ is probably better for games because of the fact that it is lower-level. C# and Java rely on, respectively, a framework and a virtual machine. These things make both languages a bit more distanced from the lower level system stuff. I guess you could say this does make it easier to make applications in a sense, however it also means these applications are bound to the framework / virtual machine.

I guess people are telling you C# is more "modern" because it is very actively being used in the .Net community. Admittedly I used to use C# all the time and I loved using it because I feel it provided a bit more flexibility than things like Visual Basic and it had similarities to C++ and Java that made it more comfortable to use in my case. Initially C# was kind of like "Microsoft's Java" from my memory. There are a lot of syntactical similarities between C# and Java.

I haven't really seen Java being used so much recently, but maybe that's just because I'm not really looking in the right places / I don't really use much that needs a Java frontend. I quite like Java as a programming language, but I feel that it's probably a bit limited as far as game development is concerned. Of course, there are exceptions (like RuneScape) but you're better off using C++ or C# if you're thinking device-based games. The only reason why Java is so powerful for RuneScape is because it allows the game to be webbrowser / internet based while still relying on the client computer's hardware (CPU, graphics capabilities etc.).

If you were wanting to use something like Unity3D and C# is its language of choice, then by all means C# is a completely viable choice. I'd actually recommend it because Unity will provide you with a ways of getting in to game dev without going too heavy in to all of that system-level stuff and having to discover and work with C++ intended engines that were made for teams or experienced programmers. In a way, Unity is probably the perfect beginner tool for proper 3D game development while still giving you a great amount of flexibility in what you can do.

---

To elaborate on your questions on Java: Java is NOT JavaScript. JavaScript is a scripting language that is syntactically very similar to Java, however JavaScript code is actually run by the webbrowser when the script is loaded. Java, however, is run by the Java Virtual Machine (JVM, which is the main component of the JRE that you have to download to run Java apps).

JavaScript is more intended for dynamic display of content and running simple background tasks on a webpage. In other words, it's a way of providing a dynamic frontend to a webpage.

Java however was initially intended to be able to be run on any device that had a JRE made for it. For the people who made Java, it was paramount that cross-platform compatibility was there. Sooner or later Java developed in to something more internet themed, i.e. a way to deliver content to users (think like desktop applications in your webbrowser) while still being as secure as possible - which is why the JVM stops any Java application from directly accessing any of the client computer's memory etc.; imagine if you could go on to a webpage with something like Java that allowed a virus to be loaded in to your computer's memory. The JVM stops that kind of stuff and that is one of Java's advantages.

To summarise that, JavaScript is for webbrowser based dynamic (changing) content, such as those roll-down menus you see, or even the text editor that allowed you to write your post on this forum that allows you to bold, underline or color text, etc.. Java (in an internet context) is for the dynamic delivery of actual applications.

---

As an aside, I apologise if this doesn't make any sense, is incorrect in any way, or is entirely incohesive. I've been on very little sleep recently and I haven't actually used any of these languages in quite a while so I'm running on old memories.
 
Starting off with Programming...
I guess it depends what you want to do. If you want to make runescape scripts, learn java first since almost all scripts with a few exceptions are written in java. C++ is definitely the harder of the two. Java automatically does some stuff for you which is nice but on the other hand you will probably need to learn about the things that java does automatically for you sooner or later anyway. If you want to learn how to make simple games I would probably learn java first but if you want to develop ipad apps I would probably learn c++ first.
 
Starting off with Programming...
I guess it depends what you want to do. If you want to make runescape scripts, learn java first since almost all scripts with a few exceptions are written in java. C++ is definitely the harder of the two. Java automatically does some stuff for you which is nice but on the other hand you will probably need to learn about the things that java does automatically for you sooner or later anyway. If you want to learn how to make simple games I would probably learn java first but if you want to develop ipad apps I would probably learn c++ first.

Disagreed. RuneScape is a single game. Correct that Java does have features that must be done manually in languages such as C++, however it is fairly limited in the scope of games. I'm amazed that RuneScape has even gotten to the point that it's at. Your line of thought as I interpret it is "RuneScape is in Java. RuneScape cheats and scripts are in Java. Games are in Java" which is kind of wrong.

If you wanted to make games with the backing of a framework, with things such as garbage collection etc. then C# would definitely be better, ESPECIALLY if it is compatible with something like Unity3D or even XNA.
 
Starting off with Programming...
Ahhhhhh I'm gonna make it short and sweet.

You said games and apps? Apps as in mobile apps?
For games AND mobile apps: Java
For games: C#
For mobile apps: Java
For games AND computer applications: C#
For computer applications: C#

I would NEVER recommend C++ to a beginner. It's a very daunting language and takes away from the fun.

My recommendation? C#. Great language, flexible, and fun to use in Unity and/or Monogame/XNA.
 
Starting off with Programming...
Out of your list, probably the easiest language to begin to learn is Java, followed by C#, and then C++. Java is a very versatile language, and it is cross platform, making developing with it incredibly simple. However, Java has certain caveats that make it a bit complex, for one, it is incredibly verbose.

C# would be my next option, it is somewhat cross platform, but it requires more work to port over your applications to other operating systems. Overall it would be very useful to know, and you'll find yourself wanting to learn it after dabbling with Java a bit.

C++ is fairly complex, but once you have a general understanding of another language, the concepts will come rather easily, but I highly recommend against learning this first.
 
Starting off with Programming...
I think Java is a great starting language. C++ would be much harder because it allows you to do much more than Java does. If you don't understand what is going on, you will run into problems. You could also start with a language like Python or Javascript which are even simpler. Javascript would allow you to do some web development and stuff.
 
Starting off with Programming...
Start with C++, I felt that once I learned the code of C++ it was very easy to pick up a lot of languages such as PHP and Java.
 
Starting off with Programming...
I'm guessing you already started, I would recommend learning java first and then c++ if you want to do that. That's just how I did it and it worked well for me but if you really want you can try beginner tutorials for all of the languages you are interested in and see which one you like the most and just keep learning that one.
 
Starting off with Programming...
Starting off with Programming...
Starting off with Programming...
Starting off with Programming...
Listen, bitch (completely joking), my university made us take it aha.

I've just learned fake assembly, which is sad.
 
Runescape Gamblingrunescape gambling
Back
Top