What do we mean when we say smart client? What is the defining factor of smart client applications versus thin client applications? On which devices can we deploy smart client applications? When developing a mobile solution it is important to learn about the various application models available, and one of the best ways to do that is to ask questions. The goal of this chapter is to provide you with an overview of the smart client application model to answer the important questions. Doing so will help you make intelligent decisions when deciding which application type is appropriate for a given project.
This chapter gives an overview of the smart client application architecture by highlighting the main components that comprise a successful solution. Following the architecture overview, we will take an in-depth look at the major mobile operating systems for smart client solutions. The combination of the mobile operating system and the device hardware often dictate whether it is possible to implement a smart client solution.
As you read, keep in mind that smart client applications are not limited to wireless devices. Many mobile applications run on a laptop environment, in addition to PDAs that communicate via cradles. Actually, until recently, laptop-based applications were considered to be the leaders in the mobile space. As we will see in the remainder of this chapter, smart client applications provide a very flexible way to extend enterprise data to mobile workers, on a variety of devices ranging from laptops to smart phones.