Oracle has decided to put Swing in „maintenance mode“, which means that only serious bugs will be fixed. Swing will still be around for a few years, but there will be no new feature development. Browser vendors discourage the use of the Java Plugin, meaning that you can no longer distribute applications using WebStart and Java Applets. This makes Swing a bad choice for all new application development. Owners of existing applications should consider moving to a different platform.
There are several alternatives to Swing, and it’s important to choose the right one. We’ve compared DukeScript with several other technologies specifically looking at these criteria:
• Java Syntax: Swing developers already know Java. No additional risk, and no time, and money for training.
• Java APIs: If the framework supports the standard Java SE Libraries, then business code can be reused.
• Embeddable: Some technologies can be combined with Swing. This minimizes risk, and the application can be ported step-by-step.
• Design Tools: Professional Tools for designing and testing are essential for high- quality User Interfaces and development speed.
• Development Tools: Availability of good tools for writing code is essential for bug prevention.
• Tools for Debugging: High-quality debugging tools for code, such as visual UI inspection, can speed up bug fixing.
• Hot Swapping: Being able to deploy code changes into the running application speeds up bug fixing and development.
• External Services: Outsourcing design and UI implementation dramatically boosts developer productivity.
• MVVM: A modern architecture allows for changing the view code and business code independently.
• Testability: Good test coverage reduces maintenance costs.
• Shallow learning curve: Becoming productive with a new technology takes time and effort.
We’ve summarized our findings in a white paper. The target audience are Swing developers who either want to create a new application, or port an existing one.