반응형
아래 글은 공부를 위해 객체지향의 원리 및 이해를 정리한 것 입니다.
📃 참고도서
# 객체 지향 개념의 탄생
- 기계 중심의 기계어에서 조금 더 인간을 편하게 하는 언어로 발전 하다 발견
- "우리가 눈으로 보고, 느끼고, 생활하는 현실 세계처럼 프로그래밍 할 수는 없을까?
라는 고민 속에서 객체 지향의 개념이 탄생 - 객체 지향은 현실 세계를 반영한다.
- 0과 1로 대변되는 기계(컴퓨터)에 맞춰 사고하던 방식을 버리고
현실세계를 인지하는 방식으로 프로그램을 만들자
=> 객체 지향은 직관적이다.
# 객체 지향을 이해하기 위해 생각해본 큰 그림
- 세상에 존재하는 모든 것은 사물, 즉 객체(Object)이다.
- 각각의 사물은 고유하다.
- 사물은 속성을 갖는다.
- 사물은 행위를 한다.
# 인간의 인지법인 사물을 분류(class)해서 이해
- 직립보행을 하며 말을 하는 존재를 사람이라고 분류한다.
- 연미복, 짧은 다리, 날지 못하는 새를 펭귄이라고 분류한다.
- 밤하늘에 반짝이는 사물들을 별이라고 분류한다.
사람이라는 분류의 객체(Object) | 속성(property) | 행위(method) |
이호창 | 나이, 키, 몸무게 등 | 먹다, 자다, 울다, 걷다 등 |
박호창 | " | " |
김호창 | " | " |
# 클래스 vs 객체 = 사람 vs 김종민 (UML 표기)
- 위 UML 표기법 만 봐도 객체지향은 직관적인 걸 알 수 있다.
- 우리가 사물을 인지하고 사고하는 방식에 맞기 때문
객체 지향은 인간의 인지 및 사고 방식까지 프로그래밍에 접목하는 인간(개발자) 지향을 실천하고 있는 것이다.
반응형