3 ms·
I think it depends on the scope of your project and how many people you will have working on the codebase. I’ve used Java on Android where it was the only choic
by twobitshifter 5y ago
I think it depends on the scope of your project and how many people you will have working on the codebase. I’ve used Java on Android where it was the only choice pre-Kotlin and it definitely helps to keep everything and everyone organized and is well supported through IDEs. Yes, it can be verbose, but it’s less so today, and the code will be something that anyone can work on and continue to work on. OOP has its weaknesses but it does push people towards a direction that helps maintainability. If I had a mega-project to manage, I would choose Java.
Not knowing the alternative languages proposed I can’t comment on their shortcomings in comparison to Java. I can’t think of anything that went wrong from using Java, it’s very performant and other than perhaps garbage collection or startup issues, you won’t find many shortcomings. If your alternative language is closer to the metal than Java, I do agree the hiring will be harder and development will be slower on most teams, because you have expanded what can possibly go wrong and broadened the range of skills.
As far as bloated - it’s that way so that the code you wrote doesn’t have to be.
Verbose - it’s evolved to allow lambdas, implicit casting, and improved case statements.
Unpleasant - Not in any IDE and not if your code quality enforces doc strings- which is one of the best things about Java.
Modern - I assume functional programming is what is asked for here? Java does support lambdas, and map,filter, etc. through the stream api.