반응형

 객체지향이라는 말은 객체를 지향한다는 말입니다. 

 객체를 지향한다는 말은 객체를 중심으로 프로그래밍을 하겠다는 뜻이지요.


 그렇다면 객체는 무엇일까요.


 프로그래밍적 관점에서 객체는 데이터와 행위 입니다.

 근데 이렇게만 말을 하면 어렵죠. 조금 쉽게 이야기를 해보겠습니다.


 객체란 우리 주변의 모든 것이 될 수 있습니다. 다르게 이야기하면 명사로 정의 되는 

모든 것을 만들 수 있습니다. 지금 제 눈 앞에 보이는 학생증, 주민등록증, 모니터, 노트북, 휴대폰에서부터

옷핀, 스템플러, 펜, 날크립까지 정말 모든 것을 담을 수가 있습니다. 심지어 추상적인 개념인 동물, 인류, 

철학 등등도 담을 수가 있습니다. 그래도 우선은 가장 생각하기 쉬운 '물건'을 중심으로 객체를 생각해 보죠.


 앞에서 말했듯 객체란 데이터와 행위로 이루어집니다.

 

[그림 1]




 그렇다면, 데이터란 무엇이고, 행위란 무엇일까요?


 데이터란 그 물건이 가지고 있는 고유의 정보 또는 변하는 값이고, 행위란 그 물건이 가진 데이터를 가지고 할 수 있는 행동-행위를

의미합니다. 즉, 행위란 동사형이 되는 것이지요. 아직은 어렵죠? 




 [그림 2 객체의 데이터== 명사, 행위 == 동사]



 예를 들어서 


 '펜'이라는 것을 가지고 객체를 만든다라고 하면(객체로 만든다는 것은 객체화라고 합니다),

 펜이 가진 정보는 우선 볼 수 있는 것은 잉크의 잔량, 펜의 이름 등이 있습니다. 

물론 더 많은 정보가 있겠습니다만, 중요한 점은 이 정도가 됩니다. 자, 그렇다면 이 정보를 가지고

활용할 수 있는 것은 무엇일까요?


 당연히 펜이라면 "써야"겠죠? 종이에 쓸 수 있습니다. 그리고, 잉크가 떨어지면 "채워넣을" 수도 있겠죠?

 그리고, 이름을 "붙일 수" 있습니다.

 그렇다면, 펜에 대한 객체화는 다음과 같이 될 겁니다.


 

[그림 3 펜의 객체화]

 

 다른 예를 들어 봅시다. 이번엔 물통에 대해서 객체화를 시켜봅시다.

 물통은 데이터가 물의 양일 것이고, 물을 넣거나, 먹는 것이 행위가 될 겁니다.


 이번엔 스템플러에 대해서 객체화를 해볼까요?

 스템플러의 데이터는 스템플의 양이 될 것이고, 스템플러를 찍거나, 채워 넣는 것이 행위가 될 겁니다.


 자, 이제 뭔가 조금은 감이 오실 겁니다. 


 객체란, 사실 말이 거창할 뿐이지 현실에 존재하는 사물, 생물, 개념, 철학 등등등을 담을 수 있는 정말 전 범위적인

것이란 겁니다. 객체를 영어로 말하면, 오브젝트(Object)인데요. 이 말은 대상, "물건"을 지칭하죠. 물건이란 우리가

명사로 지칭할 수 있는 모든 것이 됩니다.


 이제 객체를 자바에서 만드는 법을 보기 전에 클래스라는 녀석을 보도록 합시다.


 -- 다음 챕터--



 



반응형

'Java & Spring > 디자인 패턴 & 방법론' 카테고리의 다른 글

[퍼옴] CBD 방법론  (0) 2013.08.06
객체언어에 대한 생각  (0) 2013.08.01
Spring 개요  (0) 2013.06.25
Thymeleaf 란? 그리고 예제를 사용하는 방법  (0) 2013.06.11
JNI와 NDK의 이해  (0) 2013.01.14

WRITTEN BY
데르벨준

,