안루피취뽀일기

객체지향프로그래밍(Object-Oriented Programming : OOP) 본문

Java

객체지향프로그래밍(Object-Oriented Programming : OOP)

안루피 2023. 9. 12. 21:45
728x90

객체 & 객체지향프로그래밍

 

국어사전에서 객체의 뜻을 찾아보면 '의사나 행위가 미치는 대상'이라고 설명한다. 우리 주위에 있는 객체를 생각해보면 사람, 자동차, 건물 등이 있다. 즉 눈에 보이는 사물은 모두 객체라고 할 수 있다. 다바 객체 지향 프로그래밍은 객체를 기반으로 하는 프로그램이다. 

객체지향프로그램이란 '어떤 대상(객체)을 가지고 프로그래밍한다'는 개념을 넣어두고 시작해보자.

 

생활 속에서 객체 찾아보기

 

아침에 일어나 학교에 간다. 학교에 가기까지 여러가지 일을 하게 된다. '아침에 일어난다. 씻는다. 밥을 먹는다. 버스를 탄다. 요금을 지불한다. 학교에 도착한다.' 이정도가 될 것이다. 이렇게 순서대로 일어나는 일을 시간 순으로 프로그래밍하는 것을 절차 지향 프로그래밍이라고 한다.

반면에 객체 지향 프로그래밍이란 객체를 정의하고 객체 간 협력을 프로그래밍하는 것이다. 먼저 앞의 상황에서 객체와 객체 간의 협력을 생각해보자. 일단 대상이 되는 객체를 찾아보면 학생, 밥, 버스, 학교 등이 있다. 그리고 '밥을 먹는다'는 행동은 '학생'이라는 객체와 '밥'이라는 객체가 있어 학생이 밥을 먹는 협력으로 이루어진다. 이렇듯 객체 지향 프로그럄은 먼저 객체를 만들고 객체 사이에 일어나는 일을 구현하는 것이다. 따라서 우리가 객체 지향 프로그랴밍을 할 때는 객체를 먼저 정의하고 각 객체가 어떤 기능을 제공하고 객체 간 협력을 어떻게 구현할 것인지를 고민해야 한다.

 

 

 

728x90