Is Java viable for serious game development?
I have been learning Java for a few months now, and there were a few things I was thinking about based on what I know about Java and games written in it. Is it viable to use it for making video games?
Some things that affected what I was thinking:
- Java is a very secure language so it might be a good choice for multiplayer games where hacking is an issue
- It is designed for web portability
- The way it functions can make it very slow, which is bad for any realtime games
- This is just something I have noticed, not necessarily linked to Java: if left running for too long it can start to become unstable(?)
- On the other hand, I noticed that games such as Minecraft uses Java, and those do not seem as affected by those problems.
- The immutability of several data types: I know it's a security feature, but not being able to re-size an array can get frustrating.
- This may just a matter of style, but I got into a discussion with my CS teacher about whether or not you should use in-place computing. I mentioned that if you are doing something frame by frame, then it would be better. He agreed, but he also said that in most applications you'd want to retain the original value.
So based on these and other possible concerns/benefits, is Java viable?