Solving The UI Framework Puzzle


Winston Dhanraj, Senior Architect at Cognizant Technology solutions, has posted a blog entry detailing his experiences of building a large, web-based application in Java and his search ofr the “best ‘techno-functional-commerical’ framerwork” for the job.

The wealth of information out there certainly is intimidating. A quick google search of the phrase “UI frameworks comparison” comes up with 4,510,000 results. Sifting through this wealth of information, to try and find your perfect framework, is what Dhanraj calls the “UI framework puzzle.” He proposes a solution based on the principle of “Abstraction,” namely the process of generalisation by reducing the information content and retaining only information that is relevant for your purpose.

He advises creating “Abstraction buckets” for frameworks with similar characteristics. For example, a bucket for pre-2004 Web 1.0 Technologies, such as JavaScript, Dom, HTML and CSS. Another bucket would be HTML, CSS, Javascript, DOM, XML, JSON combined with a method for exchanging data asynchronously between browser and server, to avoid complete page reloads – called the ‘Ajax Toolkit’ bucket.

Java Component-based Ajax Toolkits, Server-side-only UI Frameworks, and RIA Toolkits are other groups Dhanraj suggests siphoning some of Google’s ocean’s worth of framework information into, to facilitate the easier selection of that one perfect framework. It seems a logical system, allowing you to easily eliminate entire groups of frameworks with a single stroke. Looking for a framework that meets both client and server-side needs? Then better avoid so-called ‘View Technologies’ such as Java Server Page, Java Standard Tag Library, Velocity & Freemarker and XSLT.

But, Dhanraj isn’t through categorising yet. He proposes that the groups all exhibit one of four “valid” styles:

A. Traditional & Conservative

B. Modern yet Conservative

C. Modern & Not-so-conservative

D. Modern & Cutting-edge

Style A is, perhaps unsurprisingly, the Web 1.0 Technologies such JavaScript, DOM, HTML & CSS. Dhanraj’s Style D, is RIA Toolkits such as Flex, JavaFx and Silverlight. Some may not want to use a proprietary Integrated Design Environment (IDE), but Dhanraj makes the bold statement that “the richness in UI features offered by RIA Toolkits is much greater than that offered by any of the other Styles.” The message is clear, ‘yes, they may be proprietary, but how can you not want to use them?’

So, Web 1.0 Technologies too conservative to meet the needs of today’s Java-based app developers? Are RIA Toolkits really the app-builder’s framework choice? Or, do you have a different way to solve the “UI framework puzzle?”

Inline Feedbacks
View all comments