WebApplicationSolutions.pdf
(
501 KB
)
Pobierz
Web Application Solutions:
A Designer’s Guide
Overview
As the Web continues to extend its reach into our daily lives, an increasing number of our
interactions will happen online. The practical implication of this for interface designers is lots
of Web application projects that cover everything from filing taxes to sharing photos.
“The fundamental purpose of Web applications is to facilitate the completion of one or more
tasks” [Bob Baxley 1]. But depending on the type and complexity of the tasks involved,
different technical solutions may be better suited to enable the specific interactions each
product requires. Flash, Java applets, DHTML, Active X, Smart Clients, Java Web Start,
SVG— what do you choose and why? What types of interactivity and visual presentation
does each technology enable? What does each limit?
As Web application interface designers, these are questions we encounter time and time
again. As a result, we decided to document what we’ve learned and research what we didn’t
know about the opportunities and limitations that characterize some of the most popular
Web application presentation layer solutions available today. We evaluated each solution
against a consistent set of criteria and described it with a concise definition, set of
examples, and references that enable further analysis. We also shared our findings with a
team of expert reviewers (page 18) to ensure we were on the right track. The end result is
this designer’s guide.
For your convenience, each solution we’ve evaluated is presented on a single-page
snapshot that helps designers, product managers, and business owners make an informed
decision for their Web application’s front-end technology. Of course, this guide is not meant
to be a substitute for consulting with knowledgeable programmers and system architects.
We simply want to prepare you for those discussions.
The right Web application presentation layer needs to meet your specific business, user,
and technology needs and multiple solutions can exist per business and per product. We
hope this guide helps steer you in the right direction.
Luke Wroblewski
Principal, LukeW Interface Designs
Frank Ramirez
Principal, Ramirez Design LLC
luke@lukew.com
frank@ramirezdesign.com
Web Application Solutions: A Designer's Guide |
2
Defining Web Applications
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 XMLhttpRequest (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.
Web Application Solutions: A Designer's Guide |
3
Definitions
Thin Client
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.
Rich Client (smart client, desktop client)
Web-connected applications that do not run within the Web
browser and can be delivered as compiled code. Rich Clients
leverage local processing to enable rich interactions and can
utilize Web Services to connect to distributed data sources and
auto-update. Unlike Thin Client applications, Rich Clients can
be used offline and more easily integrate with local hardware
and software.
Rich Internet Application (RIA)
Web applications that enable richer, locally processed user
interactions (fluid animation, multimedia content, real time
validation, etc.) and advanced remote messaging (Java
Objects, Web Services, etc.). Sun’s Java plug-in and
Macromedia’s Flash are two of the most common RIA
run-times. RIAs can only run in a Web browser within
embedded plug-ins.
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).
The HTTP communication layer used by Thin Client
applications technically does not support guaranteed
message delivery, does not guarantee the order of message
delivery, and does not support server-initiated
communications. Many RIA communication layers provide
reliable messaging and enable server “pushes” of content.
A Rich Client can embed a Thin Client (i.e. a desktop
application with an integrated Web browser within which a thin
client application can run.
Rich Client Solutions:
Windows Smart Clients
Java Web Start
Thin Client Solutions:
HTML, XHTML
HTML, JavaScript, and CSS (DHTML)
DHTML with Remote Scripting via iFrame
DHTML with XMLhttpRequest (AJAX)
Thin Clients that utilize asynchronous JavaScript-driven
server requests and responses and advanced DHMTL user
interactions (a combination of technologies frequently referred
to as AJAX) are sometimes considered JavaScript RIAs.
Upcoming, Interesting, or Relevant Solutions
While this guide focuses on some of the most popular Web
application solutions available today, there are a number of
relevant technologies that may be considered for specific uses
(i.e. PDF for data entry) or future projects (i.e. XUL or XAML).
A Thin Client can embed (integrate through a Web browser
plug-in) an RIA (i.e. a Flash module in a DHTML application).
Rich Internet Application Solutions:
Flash 6 (and higher)
Flash with Flex or Laszlo Presentation Server
Java Applets
Active X
Examples include
Canoo Ultra Light Client (ULC)
Java WebCream
PDF
XSLT
SVG
Macromedia Central
Nexaweb
Xforms
XAML
Web Application Solutions: A Designer's Guide |
4
Solution Continuum
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.
Each Web application solution falls on a continuum from thin client to rich client, though some solutions really "straddle the line". A Smart Client can even embed a Thin Client (within
a Web browser inside a rich client) and a thin client can embed an RIA (i.e. Flash module in a DHTML application).
Thin Client
Delivered in the Web browser; uses
browser security, state management,
and script execution; http for data
request/response.
Rich Internet Application (RIA)
Usually delivered as embedded
run-time within Web browser
(plug-ins); goes beyond http for
remote data request/response.
Rich Client
Compiled run-time on local
machine; can use local and
remote resources; can run
offline.
XMLhttpRequest
(& DHTML)
Java Applets
Java Web Start
HTML
DHTML
ActiveX
Remote Scripting
Flash
Smart Client
(& DHTML)
(Flex & Laszlo)
Open
Built on popular open standards
Rich User Experience
Desktop-like interactions; multimedia;
state-ful applications
Local Processing & Integration
Most responsive UI; local hardware &
software integration
Wide Reach
Accessible by anyone with a Web
browser; usually operating system
independent
No Footprint
Quick download of pages as needed; no
application footprint
Deployment
Updated and distributed through a Web
server
UI Toolkits
Robust UI libraries & toolkits; reduced
development time
Offline Availability
Network connectivity not required
Web Application Solutions: A Designer's Guide |
5
Plik z chomika:
atavm
Inne pliki z tego folderu:
Designing social interfaces.pdf
(11218 KB)
Designing.Interfaces.2nd.Edition.Dec.2010.epub
(49742 KB)
Designing visual interfaces.pdf
(57436 KB)
Pervasive inf. architecture(1).pdf
(52693 KB)
Designing.Interfaces.2nd.Edition.Dec.2010.pdf
(59608 KB)
Inne foldery tego chomika:
Pliki dostępne do 01.06.2025
Pliki dostępne do 19.01.2025
!!! do ściągnięcia - różne
■ The Settlers 7 PL
Artystyczne
Zgłoś jeśli
naruszono regulamin