
18
|
Chapter 1, Master Projects and Solutions
#3 Organize Projects and Solutions
HACK
This organization makes the most sense when you are developing a
client-server solution. Your client-side application can be one solution,
and your server-side application can be another solution. Both solu-
tions will share certain projects, but all of the projects will not be part of
any single master solution.
Project Division
One of the big decisions when first starting a new development project is
how to divide it into Visual Studio projects. This division into projects is dif-
ferent for each development project, but a general rule of thumb is to divide
projects based on layers and dependencies.
Layers are the logical boundaries of your application. They
may sometimes coincide with physical boundaries, like
between two servers, but not always. The common three-lay-
ered application consists of a presentation layer that dis-
plays information to the user (ASP.NET web forms,
Windows Forms, etc.), a business layer that includes the
actual business logic for your application, and last, a data
access layer that facilitates the interaction between your
application and your database. The number and type of lay-
ers can vary greatly between applications. In some instances,
the three-layer model is overkill; in other instances, it is woe-
fully inadequate.
If you decide to divide your project into a façade layer, business ...