Mobile Technology News & Mobile Fun

With Silverlight 4 and Flash Catalyst, the RIA battle begins in earnest

By Scott M. Fulton, III, Betanews


Download Silverlight 4 RTM for Windows from Fileforum now.


In recent years, most Web applications in widespread use have been developed with Web browsers as their platform. Here, one imagines Java advocates are already composing their complaint letters. But with Web resources bound to URLs, for most developers, it’s made sense to utilize the functionality most commonly associated with URL-bound resources: HTML, JavaScript, and now its rapidly maturing derivative, AJAX.

The drive to move rich Internet applications (RIAs) off the browser got two big shots in the arm this week, with Adobe’s release of Creative Suite 5 on Monday, followed by Microsoft’s Tuesday formal release of Visual Studio 2010 and today’s formal release of Silverlight 4. While richer video is, of course, one component of both platforms, they’ve also developed new methodologies for designing simpler client-side Web apps that maintain data on more robust server-side applications.

Just as information wants to be free (especially if you pay enough for it up front), Web apps by design are often constrained by the framework of the browser. Java developers always understood this, but only recently has Sun — and now Oracle — devoted serious effort to building a rich Internet application framework around Java, with JavaFX having exited beta in December 2008. Neither Java nor JavaScript nor XML, JavaFX is a declarative scripting language for building the components of an RIA front-end — its counterpart for Silverlight and .NET developers would be XAML.

While new corporate parent Oracle has pledge both financial and emotional support for JavaFX, even its ardent supporters have commented that neither Sun nor Oracle have built a developers’ toolset for JavaFX that enables both rich and rapid app development. This is where both Microsoft and Adobe are racing to fill the app gap.

Adobe Flash Catalyst converts a multi-layered graphic from Photoshop into a workable Web app front panel.  [Screenshot courtesy Adobe]

Flash Catalyst is Adobe’s interaction development environment, designed to compete on a level more with Microsoft’s Expression toolset than Visual Studio. It’s for the designer who wants to lay out the tools with which the user operates the Web app, using the most likely tool she already uses for envisioning the Web app in the first place: Photoshop. Catalyst lets designers convert Photoshop layers into addressable graphic objects without coding. Expression has similar functionality, but it also relies on Photoshop to some extent, since Microsoft doesn’t have a competitive artistic design tool; this way, Adobe cuts off Microsoft at the pass.

By addressing the need to transport envisioned elements easily to a fully operative state, Catalyst also bypasses the whole scripting route that JavaFX is still trying to evangelize Java developers to adopt with their hearts as well as their minds. Granted, there’s some underlying Flash scripting taking place in the background (just as Expression automatically creates the underlying XAML), but with Catalyst, the designer is shielded from that process entirely.

Although one of Silverlight’s principal development tools was officially released Tuesday, Microsoft developers have already been actively using the Visual Studio 2010 Release Candidate (with its “Go-Live” licensing for those eager to deploy) since the early part of last year. The real surge forward for the Microsoft camp today has to do with the escalation of what had been called .NET RIA Services to the new WCF RIA Services (Windows Communication Foundation), acknowledging its usefulness to Silverlight as well.

With this new WCF RIA Services support in Silverlight 4, released today, the developers of so-called n-tier applications (distributed apps that run on multiple platforms simultaneously, often three at once) can engineer front end client apps in Silverlight that don’t have to replicate the state of the application from the server, just so it can pass control from one window to another. Rather, a new Silverlight 4 app can be developed more like Web pages, which are mindless of the context of other Web pages, and request the information about the running Web app from the server on startup, and over time as necessary.

A sophisticated order management system appears within a Web browser framework (IE8) using Silverlight 4 and WCF RIA Services.  [Screenshot courtesy Microsoft.]

In this example application from a Microsoft Hands-On Lab published in December 2009 (ZIP file available here), a sophisticated order management system can either run in its own window or, as shown here, within a Web browser. (Notice how this sample line-of-business app is asking the user’s permission to access the Clipboard. System Clipboard access is a new feature for Silverlight 4, though it comes with safeguards.) Silverlight 4 is handling the display component, but it’s also interfacing with WCF RIA Services so that the logical component of the app (written using a supported .NET language) can be crafted independently of the presentation layer.

A multi-tier Web application using WCF RIA Services enables the entire Web client logic to be separated from both the presentation layer at one end, and the database layer at the other.

The reason for doing that becomes clearer when you think cross-platform: With an n-tier application, you can separate the application’s core logic from the code used to display it. This way, you can craft multiple Silverlight-based clients for PCs, smartphones, or tablets, each of which may handle the layout differently from one another. The Web logic will be able to gather and manage data from the server as necessary, and format the results of queries so that each Silverlight client (or alternately, as this slide from a MIX 10 presentation suggests, each AJAX client) can lay out the presentation as it sees fit.

Both Adobe and Microsoft have made significant gains in the race to build the biggest and best RIA platform. That makes the job of catching up for Oracle and JavaFX even tougher.

Copyright Betanews, Inc. 2010

Add to digg
Add to Google
Add to Slashdot
Add to Twitter
Add to del.icio.us
Add to Facebook
Add to Technorati


Have something to add? Share it in the comments.

Your email address will not be published. Required fields are marked *