| By Yakov Fain | Article Rating: |
|
| November 9, 2013 09:06 AM EST | Reads: |
400 |
Every time I start teaching my new Java class I’m looking at the Swing units in the manual asking myself, “Why my students need to know Swing framework?” Well, I need to teach them how to program GUI, event listeners, asynchronous worker threads and event loop that are pretty much the same in every programming language that deals with UI. My students create applets and test them in appletviewer, then they are going through hard times trying to run them in Web browsers… In the end, I tell them that they won’t be going doing Swing programming in the real world projects. I also tell them that if Amazon.com would decide to re-write their UI in Java they’d be out of business in no time.
If not with Swing framework, how should my Java students learn GUI programming? There is another Oracle product called JavaFX. It’s a better looking wrapper for Swing. It still runs on JVM, so Amazon would go out of business as quickly as with Swing, but at least with a better looking UI.
Java developers look down at the HTML/JavaScript crowd. Yes, programming in JavaScript is not as productive as in Java, but HTML5 applications usually look nice. HTML5 developers know that having a Web designer producing professionally looking CSS is a must. Whereas Swing components are ugly by default. They are so last century.
Recently I was attending a presentation on a particular Eclipse plugin that could produce Web reports. The speaker was using Twitter API to demonstrate how easy it was to generate a report finding tweets based on a certain hashtag. Tada….Report is generated, the Web browser opens the report’s URL and pops up the modal dialog asking to enter the search parameter. What an ugly dialog box that was! Eclipse grey style, 90% of its real estate was empty with an input field on top prompting to enter the parameter’s value. No one in the audience (all Java developers) seemed to care. They are all used to ugly GUI in enterprise applications. OK, this product was using RCP UI components, but the Swing ones are definitely not better.
The sooner Swing is deprecated the better. Even if JavaFX has no future in the Web or mobile applications, it has to become a mandatory replacement for Swing. Just because it promotes a better looking UI. Just because it promotes better taste among Java developers, who live in two different realities: the ugly depressive GUI at work and the eye candy world of iOS or Android applications. Let’s make a first step toward merging these worlds by killing Java Swing framework.
Read the original blog entry...
Published November 9, 2013 Reads 400
Copyright © 2013 SYS-CON Media, Inc. — All Rights Reserved.
Syndicated stories and blog feeds, all rights reserved by the author.
More Stories By Yakov Fain
Yakov Fain is a Managing Director of Farata Systems, consulting, training and product company. He has authored several Java books, dozens of technical articles. SYS-CON Books released his latest co-authored book , Rich Internet Applications with Adobe Flex and Java: Secrets of the Masters in Spring 2007. Sun Microsystems has nominated and awarded Yakov with the title Java Champion. He leads the Princeton Java Users Group. He is an Adobe Certified Flex Instructor. Yakov co-athored the O'Reilly book "Enterprise Application Development with Flex". He twits at twitter.com/yfain.
- WebRTC Summit at Cloud Expo Agenda Announced
- Mainstream Business Applications and In-Memory Databases
- Column Store, In-Memory, MPP Databases and Oracle
- User Accounts Are Only the Tip of the Iceberg
- WebRTC Summit | WebRTC Business Models: Building a Web-Based Telecom Co
- Announcing "OpenStack Fundamentals Track" at Cloud Expo
- Cloud Security Alliance Releases Cloud Controls Matrix, Version 3.0
- Survey Finds Large Enterprises Adopting WebRTC
- Cloud Expo Silicon Valley: Zero to Empire in 89 Days
- Opening Keynote at Cloud Expo | The Changing Atmosphere of Cloud Computing
- The DevOps Way to Solve JVM Memory Issues
- It's the Java vs. C++ Shootout Revisited!
- FoundationDB Announces General Availability of Unique ACID-Compliant NoSQL Database
- Cloud Expo 2013 Silicon Valley Call for Papers Deadline August 31
- WebRTC Summit at Cloud Expo Agenda Announced
- ARM Server “Microservers” Seek to Transform Cloud, Big Data
- Mainstream Business Applications and In-Memory Databases
- Give Cisco 60 Minutes and It Will Give You The Next-Generation IT World!
- Column Store, In-Memory, MPP Databases and Oracle
- User Accounts Are Only the Tip of the Iceberg
- WebRTC Summit | WebRTC Business Models: Building a Web-Based Telecom Co
- Cloud Expo Silicon Valley: Business APIs in the Cloud
- Hard Dollar ROI of Gamification
- Announcing "OpenStack Fundamentals Track" at Cloud Expo
- A Cup of AJAX? Nay, Just Regular Java Please
- Java Developer's Journal Exclusive: 2006 "JDJ Editors' Choice" Awards
- JavaServer Faces (JSF) vs Struts
- The i-Technology Right Stuff
- Rich Internet Applications with Adobe Flex 2 and Java
- Java vs C++ "Shootout" Revisited
- Bean-Managed Persistence Using a Proxy List
- Reporting Made Easy with JasperReports and Hibernate
- Why Do 'Cool Kids' Choose Ruby or PHP to Build Websites Instead of Java?
- Creating a Pet Store Application with JavaServer Faces, Spring, and Hibernate
- Where Are RIA Technologies Headed in 2008?
- What's New in Eclipse?




















