A better explanation of the Liskov Substitution Principle

Short version: If X inherits from Y, then X should pass all of Y’s black box tests. I first encountered this idea at SPLASH 2021. The longer explanation A bit of background In A Behavioral Notion of Subtyping Liskov originally defined subtyping in inherited objects as follows: … » Hillel Wayne | hillelwayne.com

8 de noviembre de 2023 · 1 min · 53 palabras · Nacho Cano

What are SOLID Principles? Explained with OOP Concepts.

Software developers implement codes to meet the users’ requirements and satisfy the clients. Some… » DEV Community | dev.to

6 de noviembre de 2021 · 1 min · 19 palabras · Nacho Cano

Adapter Pattern vs. Bridge Pattern

The Adapter pattern and the Bridge Pattern have brought along a lot of confusion. In this post we’re… » DEV Community | dev.to

4 de octubre de 2021 · 1 min · 23 palabras · Nacho Cano

Liskov substitution principle

Created by created by Barbara Liskov and Jeannette Wing, the Liskov Substitution Principle or (LSP… » DEV Community | dev.to

15 de julio de 2021 · 1 min · 20 palabras · Nacho Cano

Dependency Inversion Principle

Dependency Inversion Principle (DIP for short) states: One should depend upon abstractions and… » DEV Community | dev.to

15 de julio de 2021 · 1 min · 18 palabras · Nacho Cano

SOLID: Interface Segregation Principle

This principle was developed by Robert C. Martin while working at Xerox as a consultant. Martin was… » DEV Community | dev.to

17 de junio de 2021 · 1 min · 22 palabras · Nacho Cano

S.O.L.I.D. Software Design Principles To Help You Become A Better Developer

S.O.L.I.D. Software Design Principles To Help You Become A Better Developer » hackernoon.com | hackernoon.com

7 de octubre de 2020 · 1 min · 15 palabras · Nacho Cano

10 OOP Design Principles Every Programmer Should Know

The Object-Oriented Design Principles are the core of OOP programming, but I have seen most of the Java programmers chasing design patterns like Singleton pattern, Decorator pattern, or Observer pattern, and not putting enough attention on learning Object-oriented analysis and design. It’s important to learn the basics of Object-oriented programming like Abstraction, Encapsulation, Polymorphism and Inheritance. But, at the same time, it’s equally important to know object-oriented design principles. » Hacker Noon | hackernoon.com

6 de mayo de 2019 · 1 min · 74 palabras · Nacho Cano