/design-patterns

Head First Design Patterns Implementation in C# for .NET Core

Primary LanguageC#

#Design Patterns

OO Patterns

OO Principles

  • Encapsulates what varies.
  • Favor composition over inheritance.
  • Program to interfaces, not implementations.
  • Strive for loosely coupled designs between objects that interact
  • Classes should be open for extension but closed for modification.
  • Depend on abstractions. Do not depend on concrete classes.
  • Principle of Least Knowledge: talk only to your immediate friends.
  • The Hollywood Principle: Don't call us, we'll call you.
  • A class should have only one reason to change.

You need .NET 8 to run these examples.