Home / Java Patterns and Pitfalls     frequal.com

Swing Is Best for Oracle

Summary

Oracle has stated that a main reason for buying Sun is to gain control of Java, since it is fundamental to their business. However, there is one key area in which Oracle has used and promoted a non-Sun java technology, by adopting an SWT-based framework (Eclipse). If Oracle is really interested in controlling the Sun ecosystem and not having it run by another company and competitor (IBM), they'll switch their development tools and frameworks to Swing-based frameworks (like Netbeans) as soon as time permits. The Swing team at Sun has a great opportunity to help their new management team fulfill their objective of full control over the Java ecosystem.

Background and Justification

Sun recently agreed to be acquired by Oracle. Oracle stated that they want to bring control of Java in-house since they depend on it heavily. They use J2EE in their middleware and Java GUIs for their developer tools. Their BEA division is heavily dependent on Java.

From CNET:

Ellison said that Java is "critical" to Oracle's middleware and that the company's middleware offerings are on track to be as big as its database business.

Oracle also has a lot of applications and developer tools. At present they have been building many of them on the Eclipse framework. Eclipse is based on the SWT framework, which is inferior to Swing, as I have documented here. Since SWT is both an inferior technology, and since it is controlled by IBM, a competitor, it would be best strategically for Oracle to switch to the superior technology that they now own -- Swing.

Going Forward

Oracle has an opportunity to fully own their Java stack. By replacing their SWT dependency with Swing, they will be improving their applications and gaining control over their software stack, both stated goals of the acquisition. The Swing team at Sun has a great opportunity to boost Swing's development resources and prominence.
Last modified on 22 Apr 2009 by AO

Copyright © 2014 Andrew Oliver