01. 객체지향 이전의 프로그래밍 패러다임
- 비구조적 프로그래밍( non-structured programming )
- 코드를 구조화하지 않고 작성하는 방법을 의미한다.
- 절차적 프로그래밍( procedural programming )
- 소스 코드를 여러 부분으로 나눠서 활용하는 패러다임으로, 프로시저를 이용해 구조화하는 방식을 말한다.
- 이때, 프로시저( procedure )는 일련의 코드 묶음을 말하며 보통 함수를 생각하면 된다.
- 절차적 프로그래밍의 한계 존재
- 프로시저가 가진 논리적 다층 구조를 프로그래밍 내부에서 표현하는 데 한계가 있다.
- 불필요한 프로시저를 호출하거나 전역 변수를 수정할 수 있다. 이때 프로그램 동작에 치명적인 영향을 줄 수 있다. 이를 보완하기 위해 등장한 것이 객체 지향 프로그램이다.
02. 객체지향 프로그래밍
-
객체지향 프로그래밍 개념
- 객체라는 논리적인 개념으로 코드를 구성하는 것을 말한다.
- 프로그래밍에 객체를 사용하는 가장 큰 이유는, 어떤 사물을 코드로 기술하는 데 적합하기 때문이다.
<aside>
💡
객체지향 프로그래밍의 특징
</aside>