Skip to content

zolakt/DotNetSampleApi

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

The provided sample code is a small skeleton C# Web API application. It can be opened and run in Visual Studio 2015. The application manages users and their tasks.

The sample demonstrates a lot of concepts that I consider as "good design practices".

Some key features:

  • follows SOLID principles
  • embraces DDD concepts
  • embraces TDD concepts
  • REST API
  • low coupling
  • uses dependency injection
  • code easy to test and mock
  • used design patterns: factory, singleton, adapter, composite, decorator, flyweight, template
  • DAL is fully decoupled and can easily be replaced (a simple in-memory database is used, but it can easily be replaced with any ORM/NoSql/Object DB, or a combination of all of them)
  • domain objects are mapped to database objects, and vise-versa, in DAL (data structures can differ)
  • domain objects are mapped to DTO objects, and vise-versa, in services (data structures can differ)
  • "Request-Response" pattern in services
  • "Common" components are generic, domain agnostic and can be reused in multiple projects

About

OOP, DDD, TDD showcase app

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages