Depend on Abstractions not Concretions (Framework)

Christopher Okhravi β€’ April 17, 2024
Video Thumbnail
Christopher Okhravi Logo

Christopher Okhravi

@christopherokhravi

About

I’m on a mission to answer a simple question: Which abstractions should be used when? From the moment I learned my first abstraction, I was hooked. This fascination continues to shape how I think about software and has led me to complete a PhD. On this channel, I share practical frameworks, mental models, and real-world examples to help you make better decisions as a developer. Whether you’re a student, entrepreneur, or seasoned programmer, the right abstraction can make all the difference. I make videos on: 1. Choosing the right abstraction. 2. Reducing complexity without losing flexibility. 3. Decision-making tools for scalable code. 4. When and why to make trade-offs. If you’ve got a question, challenge, or story, email meβ€”I’d love to hear from you. Note: Some links on this channel are affiliate links. If you buy through them, I may earn a commission at no extra cost to you.

Video Description

I made this simple framework to explain why and how we should "depend on abstractions and not on concretions". It's a quadrant diagram where the two dimensions captures the principles "program to interfaces, not implementations" and "dependency injection". πŸ’š BUY MY BOOK: https://theobjectorientedway.com πŸ›οΈ https://geni.us/IBhtLnh (Clean Architecture) 🧠 https://geni.us/CpLx2y (Agile Principles, Patterns, and Practices) 🌟 https://geni.us/zzlx (Dependency Injection: Principles, Practices, and Patterns) 00:00 Intro 00:14 Overview 00:41 The diagram 02:41 Concretion + Instantiation 05:34 Dependency Injection (Concretion + Injection) 06:36 Program to interfaces (Abstraction + Instantiation) 09:22 Combining both (Abstraction + Injection) 10:01 Book recommendations 10:39 Depend on abstractions (Abstraction + Injection) Watch next: https://youtu.be/TkUhAbbRCAE

You May Also Like