Model real-world problems with classes, interfaces and SOLID principles.
Classes
Fields, methods, access modifiers, and instantiation.
Objects & References
Reference semantics, null and identity.
Constructors
Default, parameterized, chained, and static constructors.
Properties
Auto, init-only, expression-bodied, and computed properties.
Encapsulation
Hiding internals with access modifiers.
Inheritance
base, sealed, protected, and single-inheritance rules.
Polymorphism
virtual, override, new modifier.
Abstraction & Abstract Classes
abstract classes, abstract methods.
Interfaces
Interface contracts, default interface methods.
Method Overloading
Signature-based dispatch and pitfalls.
Method Overriding
Override, sealed override, and covariant returns.
Static Members
Static classes, methods, fields and gotchas.
Extension Methods
Extending types without modifying them.
SOLID: SRP
Single Responsibility Principle in practice.
SOLID: OCP
Open/Closed Principle in practice.
SOLID: LSP
Liskov Substitution Principle.
SOLID: ISP
Interface Segregation Principle.
SOLID: DIP
Dependency Inversion Principle and DI.