|
|
Optimize with a SATA RAID Storage Solution
Range of capacities as low as $1250 per TB. Ideal if you currently rely on servers/disks/JBODs
While HTML5 is a solid challenger to rich-client frameworks like JavaFX, Java developers have reason to question current thinking that says native apps are out of the game. And for those claiming that Java will soon be eliminated from the browser, I say the sooner the better.
Recent articles published by InfoWorld have rehashed a theme familiar to most Java developers by now: that of the aged and dying client-side Java platform, ready to be put to rest. Altogether, the three articles -- Paul Krill's "Oracle's latest JavaFX move: Too little, too late," Neil McAllister's "Last call for client-side Java," and Woody Leonhard's "It's time to run Java out of town" predict (and in the last case celebrate) a dim future for client-side Java.
But how realistic are these authors' claims?
In web programming, the word client means any software that interacts with users through a user interface. Client-side Java refers to a Java platform environment that supports the execution of clients. Both Java ME and Java SE can be used for client-side development on the Java platform. Java ME's Connected Limited Device Configuration (CLDC) can be used to run clients on small, minimally powered devices, while the Connected Device Configuration (CDC) is used to run clients on larger, more powerful devices. On Java SE, we have the Abstract Window Toolkit UI architecture and API, as well as higher level APIs such as Swing and Java 2D, which are used to develop desktop clients. JavaFX has emerged as a drop-in replacement for AWT, Swing, and Java 2D. But JavaFX isn't only good for desktop apps.
Could HTML5 really bury JavaFX? Contrasting the two technologies is one way to find out. To start, HTML5 is completely open and not owned by a major corporation, whereas JavaFX is owned by Oracle. Part of JavaFX has already been open sourced, however, and work is ongoing to open source even more of it. Open sourcing JavaFX is the most efficient way to build a competitive ecosystem and community for JavaFX. It makes sense for Oracle's bottom line.
One of HTML5's strongest selling points is deployment: the technology is broadly available through HTML5-compliant browsers that run on desktops, smart phones, tablets, and other devices. While JavaFX isn't yet available for smart phones or tablets, it does (as of JavaFX 2.1) run on Windows, Mac OS X, and Linux desktops. Furthermore, Oracle demonstrated at JavaOne 2011 that it could run JavaFX 2.0 on tablets and other devices -- namely an Apple iPad 2.0, a Samsung Galaxy Tab 10.1 running Android 3.1, and an Acer Windows 7 tablet. (For the iPad, a special Java ME virtual machine CDC was packaged with the iOS app.)
HTML5 does have a serious edge over JavaFX when it comes to tooling. Tool support for JavaFX so far is limited to NetBeans. Oracle recently announced the beta version availability of its Scene Builder tool for rapidly developing JavaFX applications, but that is hardly enough.
Another area where HTML5 is winning is the app store. Google's HTML5 app store, launched in 2010, offers free and paid web apps for Chrome. Mozilla is reportedly testing its own HTML5 app store, and so has AT&T. JavaFX currently has no such app store.