Knowledge Base

Articles

Notes and deep dives on .NET, C#, software engineering and AI.

Repository Pattern for .NET Repository Pattern για .NET

Interfaces, dependency injection and testing, with ASP.NET Core code.

Read article

Understanding Dependency Injection in C# .NET Κατανοώντας το Dependency Injection σε C# .NET

A beginner-friendly guide to DI, with a real payment provider example and unit tests.

Read article

Polymorphism in C#: virtual and override vs new Πολυμορφισμός σε C#: virtual και override έναντι new

Why method hiding with new is not polymorphism, with a runnable Animal and Dog example.

Read article

Delegates in C#: a Notify function as a parameter Delegates σε C#: μια συνάρτηση Notify ως παράμετρος

Swap a Notify function from SMS to email without touching the class that calls it.

Read article

Value Types vs Reference Types in C# Value Types έναντι Reference Types σε C#

Struct vs class, stack vs heap and the exact rule for when ref actually matters.

Read article

Type Conversion in C#: Ways, Traps and Correct Patterns Μετατροπή Τύπων σε C#: Τρόποι, Παγίδες και Σωστά Πρότυπα

Casts, Parse, TryParse, Convert and as vs is, with an example that throws every exception on purpose.

Read article

The 4 Pillars of OOP in C# Οι 4 Πυλώνες του OOP σε C#

Encapsulation, abstraction, inheritance and polymorphism, one running example at a time.

Read article

Interface vs Abstract Class in C# Interface έναντι Abstract Class σε C#

Why both matter for abstraction, how they differ and how each one works with DI.

Read article