절차지향 언어에서 사용하는 구조체(Struct)의 단점을 보완하기위해 객체지향 프로그래밍이 사용된다.
우선 구조체의 단점을 알아보자
- 구조체와 구조체 데이터의 동작을 담당하는 메서드 서로가 분리 되어있다.
struct Human{
int age;
float height;
}
void Walk(Human* human){
}
// 절차지향언어인 C의 struct는 이렇게 데이터와 동작이 분리되어있다.
- 데이터와 각각의 동작을 일일히 찾아봐야하기때문에 코드가 복잡해진다.
이렇게 구조체안에 함수까지 담기위한 고민들속에서 객체지향 언어가 태어났다.
OOP(Object Oriented Programming)
- 객체는 상태(속성)를 가질뿐만 아니라 동작도 할 수 있다.
- 프로그램을 구성하는 기본 요소를 객체로 보려는 노력.
- OOP에서 프로그램이란 : 상호작용하는 객체들의 집합
'공부 > OOP' 카테고리의 다른 글
Singleton (0) | 2023.12.13 |
---|---|
Static (0) | 2023.12.13 |
개체 모델링 가이드라인. (0) | 2023.12.13 |
getter,setter (0) | 2023.12.13 |
OOP의 특성 (0) | 2023.12.13 |