Why Java?

Started by elias4444, April 05, 2005, 21:51:11

Previous topic - Next topic

elias4444

I've just been wondering lately... Why did all of the people working together to make lwjgl choose to make it for Java? There's always discussions on what programming language is better/best, but what it comes down to is - I think you guys have the skills to have been able to make lwjgl for any programming language of your choice. I'd just like to know, why Java?
=-=-=-=-=-======-=-=-=-=-=-
http://www.tommytwisters.com

kappa

i ask my self this question all the time, why Java?

well there are a lot of benefits, but my favorite is that its future proof, what this means is that as java evolves it brings more technology with it which automatically benefits your game/app like SIMD for example, its not implemented yet but will be in future java. What this does is it checks your processor if it has any specially optimizations like pentium 4 has sse/sse2 and amd has 3dnow etc, so basically it will make your game/app automatically take advantage of these tech's as well as future tech's (who knows, maybe video cards will start getting some), while other languages its not possible to do this, for c++ for example you would need to recompile your game/app and have seperate executables for each optimization etc.

dos games/apps probably don't work on the news windows properly (i certainly know some of my old fav games dont), but java apps will probably work on the new gen of os's without modifications needed.

also why not java, its a proven fact coding in java significantly reduces dev time and bugs. and with the up coming ineventable OS's wars coming up as linux for example, is starting to mature to a viable alternative, apple with there ipod buzz lately is getting a lot of attention, MS longhorn upgrade(which will surly break alot of older games for 9x/ME/2000/XP, suns solaris becoming open source, and rumour has it playstation3 might have something to do with java.

not to forget with sony trying to push the new cell cpu arcitechture which they claim to surpass and replace x86. Also the new 64bit processor jump is coming soon too. all this will break alot if not all current native code executable and stuff.

so with all these major advances which will surely break everything, which app will still work without code rewrite?
(thats right java apps of course only the jvm would need updating)

developers will no doubt start taking a look at technologies like java to get a competitive edge to be able to run there software everywhere and not needed to compile and write code again and again, especially game developers. and i can clearly see that lwjgl will be up there to cover such a gap and be one of the great technologies!

kappa

oh dear that turned out to be a long reply, sorry just got carried away!

stephencarmody

Good question though elias4444.

What about other interpreted languages like Python or Ruby. I've been hearing a lot of good things about Ruby recently. Like being faster and having much smaller code bases compared to similar solutions in Java.

Will we ever see a Lightweight Rugby Game Library (LWRGL)?

oNyx

>Why did all of the people working together to make lwjgl choose to make it for Java?

Haha. You got cause and effect the wrong way around.

They created lwjgl because they liked java and needed some way to write proper accelerated games with it. That's all.

I also like java pretty much. It's a great language and it's really neat to have the ability to use opengl with it.

>What about other interpreted languages like Python or Ruby.

For Python there is pygame. That's all I know.

princec

No idea why Java. As oNyx says, I just happened to know Java from doing ordinary work, and I fancied writing a game in it. It's turned out not to be a particularly great choice because of Sun's licensing terms but other than the odd legal grey areas it's quite quick to develop games in and been ultra-reliable.

Cas :)

WiESi

Quote from: "oNyx">What about other interpreted languages like Python or Ruby.

For Python there is pygame. That's all I know.

And for Ruby there's also something: http://www2.giganet.net/~yoshi/

WiESi

Orangy Tang

I don't care about future proofing, nor backwards compatability, nor future optimisations, nor (for the most part) cross platform. Largely, I use Java because its at a nice level between C++ and Python - specific enough to be robust, yet flexible enough so I don't have to fight with language crap and machine nonsense to get stuff done.

However, were it not for Eclipse being so great, I'd probably have switched to Python or Blitz by now (which from what I've seen have some lousy tool support).

princec

I must admit, if LWJGL hadn't happened, I'd have given up on it long ago and switched to Blitz or C.

Cas :)

elias4444

I just wanted to thank everyone for their replies. It's been something I've been asking myself a lot of lately. I've spent a great deal of time learning Java along with lwjgl, and am just hopeful that they'll have a long life.

I really think lwjgl is where it's at right now. I explored several other alternatives for OpenGL, and the only one that really competed at the same level IMO was C++ with OpenGL. Of course, I ran into a lot of the same issues that "javalwjgl" mentioned in his post about cross-platform, future proofing, etc.. Which is why I was looking to invest my time and attention to something "better." It would seem to make sense, with all these new architectures and platforms coming out, that an interpreted language with gaming APIs would be the obvious choice. I especially thought it was interesting how Playstation 3 was mentioned. Has anyone from the lwjgl group talked to Sony about this? Not that I'd want lwjgl to go all commercial or anything, but talk about an opportunity?!
=-=-=-=-=-======-=-=-=-=-=-
http://www.tommytwisters.com

blah

Quote from: "princec"I must admit, if LWJGL hadn't happened, I'd have given up on it long ago and switched to Blitz or C.

Cas :)

It's been instrumental in me sticking around too. If LWJGL hadn't taken hold, and to a lesser extent jME and Xith adopted it in dual to JOGL, I'm not sure I'd have bothered with JGF.

So long as a decent, robust, continuously supported OGL binding is out there and not being managed by committee, and there are 3D engines like Xith that *actually work* and are relatively easy to use (though still a long way to got), then there's a shining future for java games dev.