C# – First Pass at the Separation of Concern Principle

Separate concers at the mitigate the impact of change on a software system. Common "concerns": Presentation logic Business / Domain logic Persistence logic Recommendation: Seperate concerns into projects within a given solution. Naming convention: MyApplication(Solution name) MyApplication.Presentation(.Web, etc. presentation project) MyApplication.Domain(domain/business rules project) MyApplication.Persistence(.Data, .DB persistence project)