For many java provides a stable base for developing solid software solutions - with the backing of big companies and countless proven libraries.
Actually many of these libraries now seem dated and the language did not really change the way many devs would have expected.
For many years I thought that there are some very specific issues in java which would have to be solved for java to really evolve:
- classpath/classloader "hell" (e.g. outdated libraries shipped with the jdk, permgenspace issues)
- debugging of proxies (aspectj/spring)
- integration of osgi to allow clean lib management and better memory management
If the next version of java has completely new basic packages (api/impl) it would break compatibility but it would allow new projects to use a cleaner and evolved environment.
Although I guess in the end devs having these requirements will switch to different languages before something like that can be achieved.
My opinion is that java has no more big use cases anymore, except in the "big enterprise" market where it slowly replaces cobol.
ReplyDeleteI am under the impression that the most cool new things are no longer created with java, it seems that ruby, python, node.js, erlang, ... are rapidly eroding java use cases.
Also, i have seen that java developers tends to overcomplicate things, maybe because of the slow evolution of the java language?