In this chapter, we've wandered across a lot of topics concerned with client/server applications, their design, and implementation. We've also talked about using the processing capabilities of modern browsers to spread the processing load, and minimize the network bandwidth our applications require.
In this part of the book, you're going to be seeing a lot more on these and other related topics. Our aim is to change your way of thinking from being server-centric to application-centric. After all, if you look at all the best sites out there on the Web at the moment, it soon becomes obvious that they are very cleverly designed and constructed client/server applications. And for the internal office network, as you develop your own Intranet, this is the kind of technique that will offer you the fastest payback, and the optimum efficiency.
The main points of this chapter are:
Developing applications with Active Server Pages is a very different task to the traditional static Web sites we are used to seeing. We need to understand how client/server theory and practice are applied to our design and development efforts.
By using client-side programming techniques, we can spread the processing load between the client and the server. We aim to place the data capture and business rules layers of the traditional client/server application model on the client wherever possible.
To make client/server programming work on the Web, using HTTP, we take advantage of the Application and Session objects provided by ASP to preserve state. Unlike a traditional LAN-based application, this is the only way we can provide consistency over the network.
Once we can maintain state in our application, we have ways of linking each phase of our application's environment to the appropriate client. The whole process is no longer anonymous like a traditional Web site.
We need to understand the importance of good application design before we can create professional and efficient client/server applications. To help, we can take advantage of the many prewritten components available, or even create our own as required.
So now, we're ready to look in more detail at the specifics of creating client/server applications. The next two chapters are dedicated to learning how we implement and integrate client-side processing with our server-based Active Server Pages.