2 ms·
First of all, the number one component of the Java ecosystem is the JVM - a rock solid execution environment on pretty much any hardware/OS combination you're l
by mseebach 14y ago
First of all, the number one component of the Java ecosystem is the JVM - a rock solid execution environment on pretty much any hardware/OS combination you're likely to find in the wild. Also, the JVM is a very decent environment. For one, it has no trouble with high levels of concurrency. Neither Python or Ruby particularly likes concurrence (but achieves it with multiple processes). Write once, run anywhere might have been a mirage when Java came out, it's not anymore.
Next step on the ladder is languages. You can mix any combination of Java, Scala, Groovy, Clojure, JRuby, Jython and others with little or no friction.
Then there's infrastructure. There's a good selection of rock solid application servers - Tomcat, Jetty and Glassfish comes to mind. The entire JDK toolchain, especially VisualVM, JConsole and JMX. Get a stacktrace or a heap dump from a running java process? Trivial and built in.
Finally, the libraries: JDBC is pretty neat: Every database under the sun plugs into the same interface. Terracotta has a pretty interesting line up (http://terracotta.org/products http://terracotta.org/products). Hadoop - it's a full ecosystem of it's own. Eclipse and IntelliJ IDEA. Apache POI for MS Office doc manipulation. Apache FOP is supposed to be pretty powerful. Lucene. Apache Commons.