0

I am trying to understand the goals of Java EE specification.

I suppose Sun could just build a software package offering all those functionalities? Kind of like Spring. Instead they thought it was better to build a specification and allow other vendors to implement it. Why did they think so and what exactly is achieved by this approach?

I am not asking why people need to create specifications before writing software. Those specifications are about understanding requirements and creating a plan. To me, Java EE specification seems to be different. It was created with the explicit goal to be implemented by other vendors.

9
  • 2
    Possible duplicate of Why bother with detailed specs? May 6, 2017 at 6:36
  • 1
    @Ben Cottrell No, I am not asking about specifications in general. I edited my question to explain. May 6, 2017 at 7:13
  • 1
    Does "competition is good" answer your question? Or, put it another way: what are you looking for in an answer? They also created a Java Language Specification that allows other vendors to implement the Java language, the Java Virtual Machine Specification that allows other vendors to implement the JVM bytecode language, and various library specifications that allow other vendors to implement the JRE. What makes Java EE different? May 6, 2017 at 18:17
  • 1
    Because Sun is a CPU and OS vendor, not a middleware vendor. In fact, they really aren't a language vendor either, they sort-of accidentally became one. IBM, Oracle, BEA, etc. are middleware vendors. Compatibility is good, competition is good, middleware is important, Sun itself is not in the middleware business, ergo, the natural thing to do is to create a specification which ensures that the competing implementations are compatbile. May 8, 2017 at 0:17
  • 1
    Note that this actually worked out somewhat differently: IBM and BEA actually both developed their own Java and JVM implementation (IBM J9 and BEA JRockit) in addition to their JavaEE implementations. Oracle then first bought JRockit and later Sun, so in the end most middleware vendors also ended up being Java/JVM vendors as well. May 8, 2017 at 0:21

0

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Browse other questions tagged or ask your own question.