You should not take for granted the structure of your solutions and projects in Visual Studio. Organization will set you free, and it's important to make sure that your development assets are organized in a logical and consistent manner. Project organization is the first line of defense for your application architecture, because the project structure helps define and drive the composite parts of the application. The organizational structure of your project should be logical. It should be clear where specific components exist. This clarity helps the developers understand how to partition their components and how to find components in the application that others have created.

Choosing the Frameworks

Software development involves many repetitive tasks. Many of these, although critical to the application's function and success, are not really considered to add business value. Functionality such as data persistence, logging, and dependency injection are all things that applications rely on. But from a business standpoint it doesn't matter how much attention and care you put into writing a data access library, because it doesn't directly solve a business problem. This type of code is called plumbing code, and it was the impetus of the phrase among developers “Don't be a plumber.”

For tasks that are repetitive, time-consuming, or difficult to implement, developers have come to rely on frameworks. A framework is a library or set of libraries that you utilize in your ...

Get Professional Test-Driven Development with C#: Developing Real World Applications with TDD now with O’Reilly online learning.

O’Reilly members experience live online training, plus books, videos, and digital content from 200+ publishers.