On a mobile device? Try our mobile site, optimized for faster browsing.
Java programming language. It's cool to hate, but I love it (similar to my thoughts on Chipotle). It's run by Sun, so that's not hip, but let's face it, when it comes to scaling applications, Java gets the job done.
It's a platform independent language. I love that. Run it once here, run it anywhere. And yes, I've worked on projects where I wrote it in windows, ported it to OSX, then linux with ease.
Contrary to popular belief, it's fast. True, back in the day, Java was a clunker language, but these days JIT compilation has put Java benchmarks close to if not surpassing the performance of C++.
Ease of development. This is where the ruby/python/php developers scream that development in Java is too slow. I would wholeheartedly agree with you - if you're programming in vi or emacs. But with tools like IntelliJ IDEA, things like refactoring, code completion, and code generation, code analysis are just a part of every day life. You will find that you are writing very little "overhead code" and a lot of meat.
Scalability. Java scales. We know this for sure. Yes, I can also name a dozen clunky websites on the net written in Java, doesn't means it's a slow language, it could be a multitude of factors. Ok fine, PHP HAS scaled - Yahoo! and Facebook did it...But think about how many superstar 6 figure salary developers it took to do that. Just buy another server if you have to. It's probably cheaper in the long run, anyway. Does Ruby scale? No one knows. Python def does, so I'm not going to knock that.
Now Open Source.
Strong developer community.
Built with security in mind.
THREADING - how do you thread in Ruby or PHP? I hear it's not easy.
The only thing I ding Java for is the loss of development time because of compilation. If I'm tweaking an algorithm, I might make 50-60 1 line changes in an hour. Every time I compile, restart my webserver, and reinitialize everything, I lost about 1-2 minutes. That's 1-2 hrs of productivity I lost, it's pretty annoying. That's where ruby/php/python beat java. However it does force me to write test-driven code. Instead of restarting/reinitializing my server every time, I fire off test cases instead. I guess that's the way I'm supposed to do things.
People thought this was:
Useful (2)
Cool (1)
105 reviews
339 reviews
17 reviews
154 reviews
38 reviews