• Should I continue with java?
    19 replies, posted
Iv recently been coding a lot of java(intermediate) because there is alot of documentation on it. But i keep asking myself if I should keep learning it or switch to something like c++. Wherever I ask people say its not powerful for what I want to do(game programming) and I should move onto a more powerful language
[QUOTE=BOT Ferris;45727451]Iv recently been coding a lot of java(intermediate) because there is alot of documentation on it. But i keep asking myself if I should keep learning it or switch to something like c++. Wherever I ask people say its not powerful for what I want to do(game programming) and I should move onto a more powerful language[/QUOTE] There are a few things that are problematic in it, but technically you can use it to make decent games. The same goes for most languages, Java just has slightly more problems than some other languages in that niche (i.e. statically typed and garbage collected ones). [editline]18th August 2014[/editline] C++ really is mostly good for different use-cases I'd say, if you'd look for a similar but better language I think C# is what most here would recommend.
I would recommend C# as Tamschi said.
As much as I hate to say it, I recommend C#. The syntax is nearly identical to java so you shouldn't have many problems in that front. On the other hand, if you want something completely different, use C/C++, It's cross-platform unlike C# and has some nice libraries. [editline]18th August 2014[/editline] Yes I know C# has Mono, but I've never been able to get it working on any linux machine I've used.
No
I need something cross-platform
Haven't you ever read the installation screen? [img]http://i.stack.imgur.com/Jteqd.png[/img] But in all seriousness, it's not like learning another language will remove what you already know about Java; keep it in your back pocket. I took Visual Basic 5/6 (not .NET) courses in college, which I thought was a dead language for a long while, but I still use it in macros for Excel. Co-workers have no idea how I accomplish some insane tasks in spreadsheets :v:
Java, C#, and C++ are all good. It's been pointed out by a number of people that you really just need to start programming in one language to start your game. Don't get all flustered in the little details of a language or when someone tells you not to program in Java because it's too slow. There will be plenty of other intricacies that need to be addressed when you get into making your game. Also, this strongly depends on what you mean by intermediate programming. I have programmed in Java for about a year now, and I still feel like I am nowhere near intermediate.
[QUOTE=blacksam;45737397]Java, C#, and C++ are all good. It's been pointed out by a number of people that you really just need to start programming in one language to start your game. Don't get all flustered in the little details of a language or when someone tells you not to program in Java because it's too slow. There will be plenty of other intricacies that need to be addressed when you get into making your game. in that case im a beginner Also, this strongly depends on what you mean by intermediate programming. I have programmed in Java for about a year now, and I still feel like I am nowhere near intermediate.[/QUOTE]
As Rohan would say [QUOTE]Use C#[/QUOTE]
Java, alongside C++ and C is one of the most widely requested languages when it comes to finding a software development job. It is widely used in desktop, mobile and even web back-end development. Because of this - you should definitely master the language so you can implement solutions without having to reference books/stack overflow. However, it is a good idea to know both a high-level language (such as Java) and a low-level language - such as C. My advice would be to keep learning about java as much as you can. If you ever get bored, find a good book/online resource to learn C. However, I wouldn't suggest completely stopping with Java to switch to another high level, object oriented language, such as C#. If anything, you should be looking into languages that differ from Java as much as possible, to broaden your understanding of the many different programming paradigms - so perhaps take a look at Haskell, Scala or Erlang in your free time too.
Everything what Speedfalcon said. If you end up deciding to learn C, install Linux, or have Linux in a VM. Learning C was a pain in the ass for me in Windows, but on Unix it's a breeze. OS X works too. Plus, if you learn C, then you can make games that have a Lua scripting engine! :D (since its binding API is in C)
[QUOTE=BOT Ferris;45727451]Iv recently been coding a lot of java(intermediate) because there is alot of documentation on it. But i keep asking myself if I should keep learning it or switch to something like c++. Wherever I ask people say its not powerful for what I want to do(game programming) and I should move onto a more powerful language[/QUOTE] Java developers are paid the most. So even if your game dev career doesn't go well you can always become a webdev or an engineer with Java and get paid top notch. "More powerful language"? Java is extremely powerful. Not saying C++ is any less powerful. But you talk of Java as if it was Pascal.
I hear java is popular because the line to getting shit done ratio is so high(low? What order is this shit again? high lines : low shit done). Managers or w/e can see that you have been working by line count. [editline]26th August 2014[/editline] Probably only applies to shit companies.
[QUOTE=reevezy67;45803543]I hear java is popular because the line to getting shit done ratio is so high(low? What order is this shit again? high lines : low shit done). Managers or w/e can see that you have been working by line count. [editline]26th August 2014[/editline] Probably only applies to shit companies.[/QUOTE] Well that sucks. I ofter re-write older code so the line count doesn't change or even worse (in this case) it gets smaller.
[QUOTE=reevezy67;45803543]I hear java is popular because the line to getting shit done ratio is so high(low? What order is this shit again? high lines : low shit done). Managers or w/e can see that you have been working by line count. [editline]26th August 2014[/editline] Probably only applies to shit companies.[/QUOTE] I can't tell why Java is so widely used, especially in web dev. But it's obviously not because of some line coutn bullshit as I know real professionals who prefer Java to other things for reasons. Not just programmers, also a few technical managers, PMs. There are reasons Java is the best paid language in my whole country. I worked in a company developing web apps on java. Nobody cared about line count. If anything less lines was better. That was a small company though and it was fully controlled by real programmers with no non-tech guys meddling with stuff. Maybe it's different in corportations.
Garbage collection makes things a lot easier. The community is absolutely huge. There are libraries working with any major technologies. Most people are taught it to get more jobs to then write more Java, perpetuating the whole thing. Also it's not a terrible language.
[QUOTE=BOT Ferris;45733280]I need something cross-platform[/QUOTE] Try Lua? I've been falling in love with Lua since I started working with Love2D.
Learn QuickBASIC like me :D
Whether or not you like the language's syntax or standard library, one thing's pretty clear: Making complicated, performance intensive 3D games on a nonstandard platform is difficult at the very least. Even if C++ is harder to learn and get going in, it's arguably far easier to write well-performing 3D games in (unless you're targeting Android, where Java is the first class platform). There's just more resources and common knowledge available. Either way, OP, you should try a few more languages, and the coding styles and paradigms associated with them. It's good to be able to solve problems in more ways than one, and compare the possible solutions.
Sorry, you need to Log In to post a reply to this thread.