📌 OOP 이란
현실 세계에 있는 사물들을 프로그래밍에 가져와서 적용합니다. oop 작성한 코드는 재사용성과 변형가능성 높일 수 있습니다.
객체들끼리 상호작용하여 원하는 결과물을 만들 수 있는것을 객체지향 프로그래밍 언어입니다.
👉 OOP 5대 설계 원칙
- SRP(단일 책임 원칙): 클래스는 단 하나의 목적을 가져야 하며, 클래스를 변경하는 이유는 단 하나의 이유여야 한다.
- OCP(개방 패쇄 원칙): 클래스는 확장이 열려 있고, 변경에는 닫혀 있어야 한다. (ex 클래스내 기능을 추가하여 확장하고 기존 코드는 수정하지 않습니다.)
- LSP(리스코프 치환 원칙): 상위 타입의 객체가 하위 타입 객체에게 상속하여 물려받는 메소드를 말하며, 정상적으로 문제없이 잘 동작 하는 것을 리스코프 치환 원칙이다.
- ISP(인터페이스 분리 원칙): 클라이언트는 상위 클래스 기능을 물려받아 사용하지 않는 메소드에 의존하면 안된다.
- DIP(의존 역전 원칙): SOLID 마지막에 해당하는 D 원칙에 해당합니다. 상위 모튤은 하위모듈에게 의존하면 안되고, 상위모듈과 하위모듈이 추상화된 내용에 의존해야합니다.