본문 바로가기
Delphi/Delphi란?

델파이 객체지향이란?(2)

by MonoSoft 2023. 6. 12.
728x90
반응형

델파이 객체지향이란?(2)

 

 

1. Object의 기본 개념

Object는 데이타와 이와 관련된 procedure를 한데 묶어

표현한 소프트웨어 패키지이다.

 

이는 현실세계가 처리중심이 아닌

사물(객체 : Object)중심으로 이루어졌다는데에 바탕을 둔 것이다.

 

세포(cell)를 예로 들어 생각해 보자 세포는

핵, 키토콘드리아, 세포질, 세포막 등으로 이루어 졌는데,

이러한 세포의 구성 요소들에게는 각각의 역활이 주어져 있다.

 

그러나 다른 기관의 입장에서 살펴보자.

세포의 구성 요소들이 어떠한 일들을 하는지는

그다지 중요한 사실이 아니다.

 

단지 단백질이나 무기질을 세포내로 전달해 주면,

세포는 그것들을 가지고 자신의 임무만을 수행하면 되는 것이다.

세포내에 어떠한 구성원들이 있는지는 알 필요도 없고,

단지 세포 그 자체로서만 인식되면 충 분한 것이다.

 

Object도 이와 마찬가지로 생각하면 쉽게 이해가 갈 것이다.

 

 

2. Abstract Data Type & Data Abstraction

기존의 data type을 이용(조합)하여 프로그래머가 정의한

새로운 data type을 Abstract data tpye이라고 하며,

이러한 방법을 Data Abstraction(데이타 추상화)이라한다.

 

이때 일반적으로 새로운 데이타와

그 데이터에 대한 연산까지 같이 정의한다.

이렇게 함으로써 사람의 생각을 한단계 높여,

구체적인 low-level(primary) data와 연산이 아닌,

추상화된 data와 연산을 다룰 수 있게 된다.

 

이 data abstration은 복잡한 데이타(complex data)를 다룰때에 효과적이다.

실제로 "Program = level of abstraction"이라는 관점도 있다.

 

​3.Encapsulation

Encapsulation Data Abstraction의 기술적인 방법을

Encapsulation이라고 한다.

 

필요한 데이타와 procesure를 모아 캡술에

담는 것에 착안하여이렇게 이름을 붙인것이다.

 

실제로 이 encapsulation으로 인해 생겨난 결과가 object이다.

예를들면,

nucleus(핵), mitochondria(미토콘드리아), membrane(세포막)등의

변수들과 그와 관계된 함수들을 cell(세포)이란

object내에 정의해 놓은 것이다.

 

이렇게 함으로써 우리들은 자세한 부분까지

신경을 쓸 필요가 없고 단지 세포라는 object만을 생각하면 된다.

 

 

4. Infomation Hiding ​

Encapsulation으로 인해 내부의 데이타는 외부로 부터 고립되었다.

데이타는 필요한 때에 단지 외부로부터의 message에 의해서만

접근되어질 수 있는데,

이러한 것을 Information Hiding(정보 은닉)이라 한다.

 

만약 Object내의 일부분을 수정하였다고 해도

그 변화는 단지 Object내에서만 영향을 끼치고,

이로 인하여 완전히 모듈화가 이루어지는 것이다.

5. Composite Object

한 Object가 다른 Object를 포함할 수 있는데 이를 composite object라 한다.

이렇게 함으로써 포함된 object를

새로운 Object의 한 부분으로 단순화 시킬 수 있고,

그에 대한 자세한 내용을 알 필요도 없으며 많은

주의를 기울일 필요도 없이 사용할 수 있다.

3편 계속.....

728x90
반응형

'Delphi > Delphi란?' 카테고리의 다른 글

델파이 객체지향이란?  (0) 2023.05.31
Delphi OOP와 C++과의 차이 [5]  (0) 2021.04.30
Delphi OOP와 C++과의 차이 [3]  (0) 2021.04.28
Delphi OOP와 C++과의 차이 [1]  (0) 2021.04.27
Delphi란...{6}  (0) 2021.04.26

댓글