Starting off with Programming...

Discussion in 'Programming General' started by PioneerDDJSX1234, Feb 16, 2014.

Starting off with Programming...
  1. Unread #1 - Feb 16, 2014 at 4:00 PM
  2. PioneerDDJSX1234
    Joined:
    Jan 30, 2014
    Posts:
    15
    Referrals:
    0
    Sythe Gold:
    0

    PioneerDDJSX1234 Newcomer
    Banned

    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?
     
  3. Unread #2 - Feb 17, 2014 at 3:00 AM
  4. Swan
    Joined:
    Jan 23, 2007
    Posts:
    4,957
    Referrals:
    0
    Sythe Gold:
    0
    Sythe's 10th Anniversary Member of the Month Winner

    Swan When They Cry...
    Retired Global Moderator

    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.
     
  5. Unread #3 - Feb 17, 2014 at 3:56 AM
  6. kmjt
    Joined:
    Aug 21, 2009
    Posts:
    14,450
    Referrals:
    8
    Sythe Gold:
    449

    kmjt -.- The nocturnal life chose me -.-
    Banned

    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.
     
  7. Unread #4 - Feb 17, 2014 at 4:18 AM
  8. Swan
    Joined:
    Jan 23, 2007
    Posts:
    4,957
    Referrals:
    0
    Sythe Gold:
    0
    Sythe's 10th Anniversary Member of the Month Winner

    Swan When They Cry...
    Retired Global Moderator

    Starting off with Programming...

    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.
     
  9. Unread #5 - Feb 18, 2014 at 7:43 PM
  10. Blupig
    Joined:
    Nov 23, 2006
    Posts:
    7,145
    Referrals:
    16
    Sythe Gold:
    1,609
    Discord Unique ID:
    178533992981594112
    Valentine's Singing Competition Winner Member of the Month Winner MushyMuncher Gohan has AIDS Extreme Homosex World War 3 I'm LAAAAAAAME
    Off Topic Participant

    Blupig BEEF TOILET
    $5 USD Donor

    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.
     
  11. Unread #6 - Feb 19, 2014 at 8:31 PM
  12. jdsfighter
    Joined:
    Jan 21, 2007
    Posts:
    603
    Referrals:
    0
    Sythe Gold:
    0

    jdsfighter Forum Addict
    Visual Basic Programmers

    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.
     
  13. Unread #7 - Feb 21, 2014 at 6:53 PM
  14. SuF
    Joined:
    Jan 21, 2007
    Posts:
    14,212
    Referrals:
    28
    Sythe Gold:
    1,234
    Discord Unique ID:
    203283096668340224
    <3 n4n0 Two Factor Authentication User Community Participant Spam Forum Participant Sythe's 10th Anniversary

    SuF Legend
    Pirate Retired Global Moderator

    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.
     
  15. Unread #8 - Feb 21, 2014 at 10:57 PM
  16. Toulouse
    Joined:
    Jul 30, 2013
    Posts:
    87
    Referrals:
    0
    Sythe Gold:
    0

    Toulouse Member

    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.
     
  17. Unread #9 - Feb 22, 2014 at 1:56 AM
  18. Body n Mind
    Joined:
    Feb 17, 2014
    Posts:
    359
    Referrals:
    0
    Sythe Gold:
    0

    Body n Mind Forum Addict
    Banned

    Starting off with Programming...

    Java is great starting just get the hardest outa the way first
     
  19. Unread #10 - Feb 22, 2014 at 2:21 AM
  20. kmjt
    Joined:
    Aug 21, 2009
    Posts:
    14,450
    Referrals:
    8
    Sythe Gold:
    449

    kmjt -.- The nocturnal life chose me -.-
    Banned

    Starting off with Programming...



    Java is far from the hardest.
     
  21. Unread #11 - Feb 26, 2014 at 2:56 PM
  22. poopy2177
    Joined:
    Jan 17, 2009
    Posts:
    1,359
    Referrals:
    1
    Sythe Gold:
    0

    poopy2177 Guru
    $5 USD Donor New

    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.
     
  23. Unread #12 - Feb 26, 2014 at 3:31 PM
  24. SuF
    Joined:
    Jan 21, 2007
    Posts:
    14,212
    Referrals:
    28
    Sythe Gold:
    1,234
    Discord Unique ID:
    203283096668340224
    <3 n4n0 Two Factor Authentication User Community Participant Spam Forum Participant Sythe's 10th Anniversary

    SuF Legend
    Pirate Retired Global Moderator

    Starting off with Programming...

    Lets learn x86 assembly first.
     
  25. Unread #13 - Feb 28, 2014 at 9:55 PM
  26. Nick 91
    Joined:
    Apr 29, 2013
    Posts:
    873
    Referrals:
    0
    Sythe Gold:
    0

    Nick 91 full stack web developer + nikola.katic.91 skype
    Banned

    Starting off with Programming...

    Well said, +1
     
  27. Unread #14 - Mar 4, 2014 at 12:14 PM
  28. Xolr
    Joined:
    Jan 15, 2014
    Posts:
    1,711
    Referrals:
    1
    Sythe Gold:
    0
    Two Factor Authentication User SytheSteamer Sythe's 10th Anniversary St. Patrick's Day 2014 Tier 1 Prizebox

    Xolr 1AabBjVuxCNCN9ZCU6fjbSDPnqybcHuwDU
    $50 USD Donor New

    Starting off with Programming...

  29. Unread #15 - Mar 4, 2014 at 12:58 PM
  30. SuF
    Joined:
    Jan 21, 2007
    Posts:
    14,212
    Referrals:
    28
    Sythe Gold:
    1,234
    Discord Unique ID:
    203283096668340224
    <3 n4n0 Two Factor Authentication User Community Participant Spam Forum Participant Sythe's 10th Anniversary

    SuF Legend
    Pirate Retired Global Moderator

    Starting off with Programming...

  31. Unread #16 - Mar 10, 2014 at 12:01 AM
  32. kmjt
    Joined:
    Aug 21, 2009
    Posts:
    14,450
    Referrals:
    8
    Sythe Gold:
    449

    kmjt -.- The nocturnal life chose me -.-
    Banned

    Starting off with Programming...


    Listen, bitch (completely joking), my university made us take it aha.
     
  33. Unread #17 - Mar 10, 2014 at 10:20 AM
  34. SuF
    Joined:
    Jan 21, 2007
    Posts:
    14,212
    Referrals:
    28
    Sythe Gold:
    1,234
    Discord Unique ID:
    203283096668340224
    <3 n4n0 Two Factor Authentication User Community Participant Spam Forum Participant Sythe's 10th Anniversary

    SuF Legend
    Pirate Retired Global Moderator

    Starting off with Programming...

    I've just learned fake assembly, which is sad.
     
  35. Unread #18 - Mar 10, 2014 at 12:25 PM
  36. kmjt
    Joined:
    Aug 21, 2009
    Posts:
    14,450
    Referrals:
    8
    Sythe Gold:
    449

    kmjt -.- The nocturnal life chose me -.-
    Banned

    Starting off with Programming...


    What did you learn?
     
< Java for games -- JVM | C++ Irc Bot >

Users viewing this thread
1 guest


 
 
Adblock breaks this site