DINO NET
SOLID - 2. Open-Closed Principle (개방 폐쇄 원칙) 본문
개방 폐쇄 원칙 Open-Closed Principle
클래스는 확장에 열려 있어야 하며, 수정에는 닫혀 있어야 한다. -> 어떤 클래스의 코드를 수정하지 않아도 기존 기능을 확장할 수 있어야 한다.
기존에 작성 되어 있는 코드들을 수정하지 않고 다른 코드들을 추가하여 기능의 확장만 하라는 뜻!
-> 다형성(Polymorpism)을 이용하면 개방 폐쇄 원칙을 쉽게 지킬 수가 있다.
추상 클래스
여러 클래스들의 공통점을 추상화해서 모아놓은 클래스
확장 O -> 추상 클래스를 상속 받는 클래스들은 계속해서 추가가 가능
수정 X -> 추상 메소드는 상속 받는 클래스가 오버라이딩 하면 되므로 추상 클래스를 직접적으로 건들일 필요가 없음
| 개방 폐쇄 원칙 > isinstance 사용 | |
| 개발의 편의성 up 코드의 유지 보수성 up |
새로운 클래스 생성 때마다 수정을 거듭해야함 코드의 길이가 불필요하게 늘어나고 중복 또한 늘어남 |

'program() > 파이썬' 카테고리의 다른 글
| SOLID - 4. Interface Segregation Principle (인터페이스 분리 원칙) (0) | 2023.02.15 |
|---|---|
| SOLID - 3. Liskov Substitution Principle (리스코프 치환 원칙) (0) | 2023.02.15 |
| SOLID - 1. Single Responsibility Principle (단일 책임 원칙) (0) | 2023.02.07 |
| (23.02.06) 객체 지향 프로그래밍 기본 개념 4. 다형성(Polymorphism) (0) | 2023.02.06 |
| (23.02.03) 객체 지향 프로그래밍 기본 개념 3. 상속(Inheritance) (0) | 2023.02.03 |