Liskov Substitution
Objects of a superclass should be replaceable with objects of its subclasses without breaking the system. Subtypes must be substitutable for their base types.
Liskov Substitution: Replaceable Without Surprises
Why a subclass must behave like its base class in every way callers rely on.
LSP in Production: Interfaces and APIs
Substitution at the interface level, contracts in typed systems, and pluggable implementations.
Advanced LSP: Variance and Behavioral Contracts
Covariance/contravariance, immutable types, and the precise rules of behavioral substitution.
Liskov Substitution: Review & Mastery Quiz
Scenario questions on contracts, substitution, and variance.
Free Books & Guides
Official Documentation
Video Courses
Liskov Substitution — Explained (YouTube)
A video explanation of the Liskov Substitution principle with practical examples.
freeCodeCamp — Software Architecture Course
A comprehensive course covering software architecture principles, patterns, and best practices.
ByteByteGo — Distributed Systems
High-quality animated explanations of system design principles, distributed systems, and architecture patterns.

