본문 바로가기
개발/개념정리

[자바] OOP 5가지 원칙

by 신앉아영 2024. 4. 13.
반응형

클래스 : 객체르 정의해두는 곳.

객체 : 실제로 존재하는 사물.

인스턴스 : 클래스에 객체를 만드는 행위 -> 인스턴스화. 인스턴스는 그렇게 만들어진 객체를 의미함.

 

 

1. 객체지향언어(oop) 5가지 원칙 - SOLID

1.1 OOP 정의

OOP : 현실세계의 사물 및 개념들을 객체로 바라보며 그 객체들을 조립해 프로그래밍 하는 기법.

 

1.2 OOP 원칙

S : 단일책임의 원칙 -> 한 클래스는 하나의 책임만을 가져야한다.

O : 개방 폐쇄 원칙 -> 확장은 개방적이며 변경은 폐쇄적이여야 한다.

L : 리스코프 치환 원칙 -> 객체는 정확도는 유지하면서 하위 타입의 인스턴스로 변환할 수 있어야 함.

I : 인터페이스 분리 원칙 -> 인터페이스는 클라이언트에게 필요한 메서드만을 포함해야한다.

D : 의존 관계 역전의 원칙 -> 추상화에 의존하며 구체적에 의존하면 안됨.

 

1.3 장점 및 단점

장점 : 객체를 중심으로 프로그래밍하기 때문에 재사용성, 확장성, 융통성이 높음.

단점 : 설계에 많은 시간이 투자되며 여러 클래스를 상속해 중복코드를 최소화하고 유지보수를 확장하기 때문에 실행 속도가 느리다.

 

 

 

 

반응형