Correlation and Causation IDs

Debugging can be one of the challenges when building asynchronous, evented systems. Why did this happen, what caused all of that?. But there are patterns which might make your life easier. We just need to keep track of what is happening as a result of what.

For that, you can use 2 metadata attributes associated […]

On Message Queue Technologies

The Database As Queue Anti-Pattern “Why is it an anti-pattern? 1) polling either short interval hammers the db, or long interval makes system irresponsive. 2) polling queries should be fast, need to implement index, which makes inserts slow, contradiction. 3) clear records to make the table efficient, usually deletes are slow 4) sharing a database […]

ioc comparison

IoC Container Benchmark – Performance comparison “Ninject is definitely the slowest container.

MEF, LinFu and Spring.NET are faster than Ninject, but still pretty slow. AutoFac, Catel and Windsor come next, followed by StructureMap, Unity and LightCore. A disadvantage of Spring.NET is, that can only be configured with XML.

DryIoc, LightInject and SimpleInjector offer a very […]

Enterprise App Dev Design Patterns

Useful Design Patterns in cloud-hosted applications ” Design Patterns The guide contains twenty-four design patterns that are useful in cloud-hosted applications. Each pattern is provided in a common format that describes the context and problem, the solution, issues and considerations for applying the pattern, and an example based on Microsoft Azure. Each pattern also includes […]

event aggregator pattern

Event Aggregator: Channel events from multiple objects into a single object to simplify registration for clients. “Event Aggregator is a good choice when you have lots of objects that are potential event sources. Rather than have the observer deal with registering with them all, you can centralize the registration logic to the Event Aggregator. As […]

SOLID Principles with Examples in C#

Implementing the Inversion of Control Pattern in C#

SOLID Principles in C# – An Overview

SOLID principles with real world examples



Initial Stands for (acronym) Concept S SRP Single responsibility principle a class should have only a single responsibility. O OCP Open/closed principle “software entities … should be open […]