This guide is not intended to define the multitude of presentation layer solutions available for Web applications. We’re focused on explaining the trade-offs. However, an overview of the grouping and evaluation criteria we’ve used to describe each solution is required to ensure we present accurate comparisons. Web Application (Web-based application)Web applications are Web-accessible (deployed and/or accessed through a Web browser) Web-connected (utilize a http connection for information retrieval or display), and task-oriented (beyond the simple browsing of information) software. Due to the variance and subjectivity inherent in defining types of Web applications, we’ve established a continuum from thin client to rich client on which each Web application solution can be plotted. Many solutions (and their various implementations) have characteristics of more than one group. For example, DHTML with XML http Request (commonly referred to as AJAX) is part thin client and part Rich Internet Application (RIA). Likewise, some desktop applications really straddle the line between Rich Internet Application and rich client (a.k.a. a thick client). Lastly, while you could think of any Internet-enabled desktop application (like Apple’s iTunes or Yahoo’s Instant Messenger) as a Rich Internet Application, we’ve left this type of software out of the discussion. Applications that require a traditional client-side install process (regardless whether or not the install file can be downloaded from a Web server) are not evaluated within this guide
The primary benefits of a thin client are reach (anyone with a Web browser can use it) and deployment (can be updated and distributed through a Web server). The primary disadvantages are limited interaction options and typically slower response times. Rich Internet Applications and Smart client technologies enable richer (desktop-like) interactions,
more sophisticated messaging, and prevent server request/responses from having to rewrite entire pages. They also maintain some of the deployment and updating benefits of thin clients. The chart below overlays popular Web application technology solutions on a continuum from thin to rich client. Most solutions fall within a range on the continuum.
Web applications that utilize the Web browser for security, state management, and script execution (run-time). Most data processing and storage occurs on a remote server and not a user’s local machine. Server request and response mostly occurs through the http protocol. The primary benefits of thin clients are wide reach (accessible by anyone with a Web browser), open development platform (built on popular open standards), no footprint (quick download, no artifacts on user machines beyond browser cookies), and deployment/manageability (distributed and maintained from a central source).