This book shows you how to build smart client applications and how to exploit them using
a service-oriented architecture. So, the best way to introduce the book is to define just what
a smart client is.
A smart client is not a technology. Rather, a smart client is a concept for a client application with
specific features. Many of these features already exist in the thin and thick client architectures.
From our experience in building thin clients, we know that if we build a web application
and deploy it to a web server, it instantly becomes available to users all over the world. Moreover,
we are aware that if the application needs to be updated, all we need to do is drop the
new files on the web server.
Similarly, we recognize that if we build a thick client, the client will have a rich and dynamic
user interface, and that it will be deployed directly to the user’s desktop. On the desktop, the
thick client application will have access to all of the local resources. For example, the application
will be able to access and use the file system, printer, processes, threads, and so on. More important,
the application can also easily integrate with other applications installed on the machine.
We can conclude that thin client applications have a global reach and are easily deployed
and updated, and thick client applications have a rich user interface and can use and integrate
easily with local resources.