110,004 views
SOLID principles: DIP (The Dependency Inversion Principle) Dependency on Abstractions. No dependency on anything specific Courses for beginners: JAVA - https://bit.ly/3kQBcZT JAVA Start - https://bit.ly/3fZYnxi JAVA Toolkit - https://bit.ly/3h5nBvr Automation QA (Java) - https://bit.ly/2YcexgS ANDROID - https://bit.ly/2PXUPkH C#/.NET - https://bit.ly/312xmoA C# START - https://bit.ly/2CE1XzE PYTHON - https://bit.ly/3g4F0TK FRONT-END - https://bit.ly/3iLNjFV WORDPRESS Developer - https://bit.ly/2Fv6eGx SALESFORCE Developer - https://bit.ly/3h6p198 UI/UX design - https://bit.ly/2E0hb2w Project management - https://bit.ly/2E2mazB Project training - https://bit.ly/349pGCY Advanced courses for established developers: GRASP and GoF Design patterns - https://bit.ly/2E7oo0q Enterprise patterns - https://bit.ly/3kQBIah Foxminded website: https://bit.ly/2DZtV9u Foxminded on FB: / foxmindedco FoxmindEd on Instagram: / foxminded.ua Foxminded on VK: https://vk.com/foxminded My Telegram: https://t.me/nemchinskiyOnBusiness My blog: www.nemchinsky.me 1. Based on the work of Robert Martin (Uncle Bob). The SOLID acronym was proposed by Michael Feathers 2. SOLID stands for single responsibility, open-closed, Liskov substitution, interface segregation, and dependency inversion 1. SRP The Single Responsibility Principle - Every class should have one and only one reason to change. 2. OCP The Open Closed Principle - software entities … should be open for extension but closed for modification 3. LSP The Liskov Substitution Principle - objects in a program should be replaceable with instances of their subtypes without changing the correctness of the program 4. ISP The Interface Segregation Principle - many interfaces specifically targeted at clients are better than one general-purpose interface 5. DIP The Dependency Inversion Principle Dependency on Abstractions No dependency on anything specific 0:00 – Introduction by Sergey Nemchinsky 0:24 – Formulation of The Dependency Inversion Principle (DIP) 0:55 – All SOLID principles and the place of the Dependency Inversion Principle among them 2:35 - How to follow the DIP principle 8:10 - About soft code, hard code and DIP