Clean Code

Visualizing Dependency Tree from DI Container

So you are a C# developer. And you need to read the code and understand its structure. Maybe you’ve just joined the project, or it’s your own code you wrote 1 year ago.

Read more...

Dependency Inversion Implies Interfaces Are Owned by High-level Modules

Dependency Inversion is one of the five principles of widely known and acknowledged S.O.L.I.D. design guidelines. This principle is very powerful and useful when applied consistently.

Read more...

Validation with Either data type in C#

In this article we will employ a functional monadic concept Either to make validation code more expressive and easier to maintain.

Read more...

Units of measurement in domain design

If you have business application of any decent size, your most important code probably resides in domain logic. Try to make it as simple and readable as possible, and it will always pay you back. Today I want to discuss one aspect of writing clean domain code: units of measurement.

Read more...