Over a million developers have joined DZone.
Gold Partner

Chrome OS and Java - Crystal Ball Gazing

· Java Zone

The Java Zone is brought to you in partnership with Azul Systems.   Discover how to stop tuning and get back to coding with Azul Zing.

Chrome OS potentially offers an interesting combination of innovation and opportunities. We have seen the dominant user interface paradigm go from thin client in the mainframe era to fat client in the desktop PC era. We have seen the failure of modern thin-client interface devices to gain significant marketshare from desktops. Most of us have got used to treating the browser as just another application which happily co-exists with other applications.

So what does Chrome OS bring to the equation? At this point it is mostly speculation, but to me it is clearly going to be an OS with a thin-client interface and services located on the same desktop, on the web, or both.

The user interface will clearly be based on the Chrome browser. Google tuned it to give great performance for Javascript.  So we can expect the standard applications of the Chrome OS to be dominated by HTML and Javascript. Google already has a set of applications (Word processor, Spreadsheet, etc) and UI controls (User-interface components such as GoogleMaps, Local Search, etc). The applications will be able to run locally without network access, with Google Gears or its successors providing the local services. They will seamlessly synchronize with network-based servers. Controls such as GoogleMaps will obviously require network access.

To me the biggest potential advantage for developers on the front-end will be the ability to create mash-up applications quite easily. Google will expose more and more useful UI controls with back-end services (on the PC or cloud), which can be mashed-up using Javascript on the front-end. Without any local installations to be managed, this will go where ActiveX never went. Controls and services on the web can be incorporated on to your application, and you don't have to worry about distribution.

From a Java viewpoint, JavaFX can fit in nicely on the front end. I hope someone at Sun/Oracle is asking Google nicely :-) A JavaFX-powered OpenOffice (which Larry Ellison wants) would be much nicer and powerful than Google docs. With its ability to interact with the browser's Javascript engine, JavaFX will be a first-class citizen on Chrome OS, and be able to interact easily with other applications and components.

On the server side, we have to consider the PC-based (local) services and web-based or cloud-based services separately. Obviously any platform that is used currently (including Java) can be used for the web-based or cloud-based services. Now that Google App Engine supports Java, there is nothing much to worry about there. On the PC-based services, I wonder if any low-level interfaces to the file system, devices, etc will be exposed at all. My guess would be that only high-level interfaces such as Google Gears will be exposed. Printing, saving, devices, etc will be exposed as Javascript objects. These will obviously need to be built on top of the base Linux OS - we just have to wait and see if Java has any role there.

The Java Zone is brought to you in partnership with Azul Systems.   Discover how to stop tuning and get back to coding with Azul Zing.

Topics:

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}