반응형
객체 지향 프로그래밍 (object-oriented programming(OOP)
: 프로그래밍에서 필요한 데이터를 추상화시켜서 상태(속성, 어트리뷰트)와 행위(메서드)를 가진 객체로 만들고, 그 객체간의 상호 작용을 통해 로직을 구성하는 방법을 의미한다.
객체 지향 프로그래밍 설계 5가지 원칙
1. SRP 단일책임 원칙 (Single Responsibility Principle)
- 하나의 클래스는 하나의 책임만 가져야 한다.
변경이 있을때, 파급효과가 적으면 단일책임의 원칙을 잘 지킨것!
2. OCP 개방-폐쇄 원칙 (Opne-Closed Principle)
- 소프트웨어 요소는 확장에는 열려있어야 하고, 변경에는 닫혀있어야한다.
3. LSP 리스코프치환 원칙 (Liskov Substitution Principle)
- 인터페이스 규약을 지키며 다형성을 구현해야한다.
컴파일단의 문제가 아니라, 각자의 맡은 역할을 지켜야한다. 대체가 가능할수있도록!
4. ISP 인터페이스분리 원칙 (Interface Segregation Principle)
- 특정 클라이언트를 위한 인터페이스를 분리.
인터페이스가 명확해지고 대체가능성이 상승!
5. DIP 의존관계역전 원칙 (Dependency Inversion Principle)
- 추상화에 의존하되, 구체화에 의존하면 안됌.
(=인터페이스에 의존하되, 구현 클래스에 의존하지 말자.)
반응형
'Spring' 카테고리의 다른 글
테스트 실행시 에러 : consider defining a bean of type in your configuration (0) | 2024.07.22 |
---|---|
[Spring] IoC , DI 란? (0) | 2024.02.02 |