This is another one of those buzzwords . What do we mean by multitier architecture and what does it have to do with the ADO .NET class library? Most of us think of a three- tier architecture or a business rules layer when we think of a multitier architecture.
Multitier architecture is an application architecture where the code is divided into logical layers and is spread over multiple software components and multiple physical machines.
Even though some consider multiple-component architecture where the code all resides on one machine as multitier, it is not. Applications written using multiple code modules and DLLs on a single machine have been around for years . They are not usually considered multitier. To be a multitier application, the code must not only be divided into multiple modules, it must be divided logically into layers with each layer performing a specified task. It also implies that the layers are distributed across multiple servers.
The most common forms of multitier applications are web applications. They typically have a presentation layer (the web browser), a middle layer (IIS and the ASP scripts or VB code-behind-forms for ASP .NET) and a database layer (SQL Server, Oracle, and others). In smaller deployments the server-side code (ASP) can run on the same machine as the database. In larger deployments the ASP code would run on its own machine or be spread across several machines for load-balancing purposes.
Simple two-tier Windows client/server applications are another common form, although many of these are being phased out in favor of multiple layers.
Now that we've established what multitier is, what does it have to do with the ADO .NET class library? Well, it turns out that ADO .NET is optimized for multitier applications. In fact, the whole .NET Framework is designed to make multitier architecture easy to design and implement. The separation of the data containers and view managers (the DataSet class) and the actual data access classes (DataAdapter and Connection) is one way ADO .NET makes multitier programming easier that it was in the past. The ability to create XML Web Services is another way.
| || |
When we say ADO .NET makes multitier design easy, we do not mean simple. It does make it easier than it was in the past using COM+, but it is certainly not an easy task. Multitier design must be undertaken carefully and much thought must be put into any design. Once all that has been done, it is relatively easy to create the components and programs using the .Net Framework.