본문 바로가기
Spring

[JAVA/Spring] 객체 지향 프로그래밍

by 겅아링 2024. 1. 30.
반응형

객체 지향 프로그래밍 (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' 카테고리의 다른 글

[Spring] IoC , DI 란?  (0) 2024.02.02