※ 본문은 김영한 선생님의 인프런 '스프링 핵심 원리 - 기본편' 강의를 듣고 정리한 내용임을 알립니다.
▶ SRP 단일 책임 원칙
- 한 클래스에 하나의 책임만
- '하나'의 책임이 모호할 수 있음 (클 수도 있고 작을 수도 있고, 문맥과 상황에 따라 다름)
- 중요한 기준은 변경 → 변경이 있을 때 파급 효과가 적다면 SRP를 잘 따른 것
▶ OCP 개방-폐쇄 원칙
- 소프트웨어 요소는 확장에는 열려있지만 변경에는 닫혀 있어야 함
- 확장을 하려면 기존 코드를 변경해야 한다는 의문이 생길 수 있음 → 다형성을 활용하여 인터페이스를 구현한 새로운 클래스를 만들어서 새로운 기능을 구현하는 방식을 활용해야 함
▶ LSP 리스코프 치환 원칙
- 프로그램의 객체는 정확성을 깨뜨리지 않으면서 하위 타입의 인스턴스로 바뀔 수 있어야 함
- 쉽게 말해서 인터페이스의 이름에 맞는 기능을 넣어야 한다는 뜻
▶ DIP 의존관계 역전 원칙
- "추상화에 의존해야지, 구체화에 의존하면 안된다"
- 쉽게 말해서 구현 클래스에 의존하지 말고, 인터페이스(역할)에 의존하라는 뜻
'JVM > Java' 카테고리의 다른 글
예외처리 (0) | 2021.06.26 |
---|---|
객체지향 프로그래밍 (0) | 2021.06.26 |
제어문 (0) | 2021.06.26 |
자료형 (0) | 2021.06.26 |
Java 소개 (0) | 2021.06.26 |