What are the features of a distributed client/server architecture?
The Web is an ideal environment to implement applications that take advantage of a distributed client/server architecture. In fact, by definition, the Internet is distributed in that the server sends pages to a remote Web client. To this mix, we can add middleware applications or other types of compiled functionality that can perform processing for our Web application.
There are several benefits to a distributed client/server architecture. First, applications are simpler to build. Because each piece is separate from every other piece, the application can easily be built one piece at a time. Second, it is easier to manage the construction process. Each piece can be assigned to a member of the development team that has the skills appropriate to the task. For example, the skilled HTML writer would work on the browser interface, the programmer would build the compiled functionality (possibly in the form of DLLs). In addition, it is easier to upgrade the application. Because of the modularity of the application, each piece can be “snapped” in and out with relatively little effort. For example, a DLL could be used with an HTML/Web user interface or with a standard Windows client/server interface. Finally, code can be easily reused. Those DLLs can be written in such a way that they can be used in future applications. Some HTML can also be written for easy reuse. By building my applications in a manner known as “loosely coupled,” many pieces can be “uncoupled” from the current application and “coupled” into another application. These are just some of the benefits of a distributed client server architecture. You should be thinking this way when building your medium-to-large scale applications.