Advertisement - Why am I seeing ads? Report
   
 

Which Language is Best to Learn?

Sort:
Previous Thread :: Next Thread 
Notunknown99 is not online. Notunknown99
Joined: 05 Sep 2008
Total Posts: 22657
06 Feb 2014 06:12 PM
So I have a book on Java, a book on C# and a book on C++ (I bought the C++ one and was given the Java and C# one), and I am wondering what you think the best language of the 3 to learn is.

I already have dipped into C++ and Java slightly (And I prefer the static typing of C++/Java and I presume C# over the dynamic typing of Lua).

Also learning Python at school (By which I mean I am teaching myself as the school has a Python interpreter/compiler, in 2 hours I got the hang of the syntax and made the worlds worst version of noughts and crosses)

FYI: The books are titled "Beginning Java (Java 7 Edition)", "Visual C# .NET" and I misplaced the C++ book, so IDK where THAT is. Also got a book titled "Windows Scripting Self-Paced Learning Guide" and "Beginning ASP.NET 3.5" and "Professional ASP.NET 3.5 AJAX".
ReplyReport Abuse
EchoReaper is not online. EchoReaper
Joined: 14 Oct 2008
Total Posts: 2470
06 Feb 2014 06:21 PM
Depends on what you want to do. In the non-mobile market, most low-level companies that higher college-grads use Java because developing in Java is faster than developing in C++. Java is a lot slower than C++(Garbage collector and virtual machine take up a lot of resources on their own in Java), but the manager only cares about the project being completed ASAP -- they most likely don't care about stability and reliability. C++ is slower to develop in, and is less-clean, but the finished product is going to be a hell of a lot more reliable. Most professional companies use C++ to program instead of Java because of this.

There's a complete difference in the mobile market. Java is the way to go with mobile devices because it's not as RAM hungry as C++. Java's garbage collector frees memory, but makes the program run slower. The limiter is the processor. With C++, you have to clean memory manually -- the limiter is RAM. RAM is the limiting factor in mobile devices, so Java is th best option. You're not going to be doing anything that requires high processing power(aside from games) anyway. On top of that, Android uses Java for its apps. Androids are going to overpower iPhones in the near future, so Java is an excellent option for mobile development.

tl;dr:

Non-Mobile Development:
Better for starting off - Java
Better in the long run - C++

Mobile Development:
Java
ReplyReport Abuse
EchoReaper is not online. EchoReaper
Joined: 14 Oct 2008
Total Posts: 2470
06 Feb 2014 06:22 PM
hire college grads*

Wtf was I thinking? e.e
ReplyReport Abuse
Notunknown99 is not online. Notunknown99
Joined: 05 Sep 2008
Total Posts: 22657
06 Feb 2014 06:24 PM
SO just ignore C#?
ReplyReport Abuse
EchoReaper is not online. EchoReaper
Joined: 14 Oct 2008
Total Posts: 2470
06 Feb 2014 06:27 PM
C# is really only used in Microsoft products(because it's made by Microsoft; on top of that, it's about as fast as Java, but not as clean as Java -- there's not really a reason to use it unless Microsoft forces you to.) Unless you plan on working for Microsoft for the rest of your life, ignore it.
ReplyReport Abuse
Notunknown99 is not online. Notunknown99
Joined: 05 Sep 2008
Total Posts: 22657
06 Feb 2014 06:29 PM
I did find Java less brain melty than C++, although I want more opinions on what to use before deciding :P
ReplyReport Abuse
EchoReaper is not online. EchoReaper
Joined: 14 Oct 2008
Total Posts: 2470
06 Feb 2014 06:34 PM
Google is an easy solution.
ReplyReport Abuse
SunTzu16 is not online. SunTzu16
Joined: 10 Jul 2012
Total Posts: 441
06 Feb 2014 06:34 PM
Yeah, Echo sums it up.

I think you might want to delve into Java initially, since it's easier for you to work with than C++ if you're new to programming.

And Java is great for android development, which is not only in mobile devices, but the Nvidia Shield, that new console with the funny name, and android tablets and computers.

And those are great platforms for indie development.

A pessimist complains about the wind; an optimist expects it to change; a realist adjusts the sails.
ReplyReport Abuse
Notunknown99 is not online. Notunknown99
Joined: 05 Sep 2008
Total Posts: 22657
06 Feb 2014 06:35 PM
I also want to get straight into working with OpenGL/DirectX (Which would you recommend?) but cannot find any tutorials on either that are up-to-date (Many for OpenGL use features labelled "deprecated" and the DirectX ones ask for "d3dx" which does not seem to exist anymore)

Do you know of any?
ReplyReport Abuse
EchoReaper is not online. EchoReaper
Joined: 14 Oct 2008
Total Posts: 2470
06 Feb 2014 06:47 PM
DirectX is probably the way to go. Who knows where Operating Systems will be in the future though. DirectX is your best bet if you plan to create games for Windows, but other Operating Systems use OpenGL. It's really all up to where you think Operating Systems will go in the future, or what you plan to do. If you think you'll be making Windows games, then stick with DirectX, but if you plan on making games for other systems, use OpenGL. Just know that OpenGL doesn't have as much support as DirectX(simple because Windows is mainstream.)
ReplyReport Abuse
Notunknown99 is not online. Notunknown99
Joined: 05 Sep 2008
Total Posts: 22657
06 Feb 2014 06:47 PM
DirectX then. Know any good places to learn?

Totally unrelated side note: How can I have table.concat work with userdatas?
ReplyReport Abuse
MettaurSp is not online. MettaurSp
Joined: 20 Mar 2010
Total Posts: 3011
06 Feb 2014 06:49 PM
concat method of the userdata o3o
ReplyReport Abuse
MettaurSp is not online. MettaurSp
Joined: 20 Mar 2010
Total Posts: 3011
06 Feb 2014 06:57 PM
Owait, if you are referring to one in a table, tostring before putting it in o3o
ReplyReport Abuse
EchoReaper is not online. EchoReaper
Joined: 14 Oct 2008
Total Posts: 2470
06 Feb 2014 06:57 PM
@Not: Learn C++ first(I forgot to mention that DirectX doesn't natively support Java; Java uses OpenGL) -- then learn DirectX(or OpenGL). Don't worry about DirectX now, because it'll just confuse you. Spend a month or two practicing whichever language you decide to use before trying to learn DirectX. It'll just seem stupid to you if you don't because some features require knowledge of how the other programming languages work to make sense.
ReplyReport Abuse
Notunknown99 is not online. Notunknown99
Joined: 05 Sep 2008
Total Posts: 22657
06 Feb 2014 06:57 PM
metatable.__concat = function(self, other) return tostring(self) .. tostring(other) end

Like that?

Doesn't work :/
ReplyReport Abuse
CoolioTree is online. CoolioTree
Joined: 26 Dec 2012
Total Posts: 1141
06 Feb 2014 06:58 PM
I'm just gonna say, try each language out and see which one you like best. Good luck :)
ReplyReport Abuse
Notunknown99 is not online. Notunknown99
Joined: 05 Sep 2008
Total Posts: 22657
06 Feb 2014 06:58 PM
@EchoReaper: As I mentioned, I am familiar with the basics of C++ (More with Java because its... prettier)
ReplyReport Abuse
AbsoluteLOL is not online. AbsoluteLOL
Joined: 01 Dec 2012
Total Posts: 3780
06 Feb 2014 06:59 PM
"it's about as fast as Java, but not as clean as Java"
This is officially the most ignorant statement I have ever read in my entire life.
ReplyReport Abuse
EchoReaper is not online. EchoReaper
Joined: 14 Oct 2008
Total Posts: 2470
06 Feb 2014 07:00 PM
@Not: In that case, I'm not sure. People usually wait until college to learn DirectX/OpenGL.

This seems to have good ratings though. Start with this and Microsoft's website:
http://www.youtube.com/watch?v=0kpSiitk4eI
ReplyReport Abuse
MettaurSp is not online. MettaurSp
Joined: 20 Mar 2010
Total Posts: 3011
06 Feb 2014 07:01 PM
No, thought you were referring to table.concat(userdata) or something. Just use tostring. I dunno why table.concat doesn't use tostring on non-number/string values.
ReplyReport Abuse
EchoReaper is not online. EchoReaper
Joined: 14 Oct 2008
Total Posts: 2470
06 Feb 2014 07:01 PM
@Abs: GTFO C# fanboy.
ReplyReport Abuse
Notunknown99 is not online. Notunknown99
Joined: 05 Sep 2008
Total Posts: 22657
06 Feb 2014 07:01 PM
So what do you recommend I learn, AbsoluteLOL?

I don't want to learn something which I wont ever use again (Which is what I am worried about with Java being a bit slower than C++)
ReplyReport Abuse
CoolioTree is online. CoolioTree
Joined: 26 Dec 2012
Total Posts: 1141
06 Feb 2014 07:03 PM
@Echo, he programs Assembly...

Anyways, listen to what I said. Try out for yourself. Everybody likes certain programming languages for one reason or the other.
ReplyReport Abuse
EchoReaper is not online. EchoReaper
Joined: 14 Oct 2008
Total Posts: 2470
06 Feb 2014 07:04 PM
@Coolio: In previous threads he's consistently made C# seem so much better than it actually is. That's where I'm basing my statement off of.
ReplyReport Abuse
CoolioTree is online. CoolioTree
Joined: 26 Dec 2012
Total Posts: 1141
06 Feb 2014 07:05 PM
C# is good, too. I've read a C# beginner's book, and it seems like a good language.
ReplyReport Abuse
Previous Thread :: Next Thread 
Page 1 of 3Goto to page: [1], 2, 3 Next
 
Add a Reply
 
   
 
Advertisement Report