본문 바로가기
Delphi/Delphi란?

델파이 객체지향이란?

by MonoSoft 2023. 5. 31.
728x90
반응형

델파이 객체지향이란

 

728x90

 

안녕하세요 ^^

 

OOP, 즉 객체지향이라는 말 많이 들어보셨죠?

 

저는 델을 1년정도 사용했는데 따지고 보니깐,

델파이가 객체지향 파스칼이라는걸 알면서도

그저 파스칼의 기본 문법만을 가지고 프로그래밍했던 것같아요.

 

객체지향이라는 향상된 개념을 마다하고 도스에서

C를 쓰듯이 생각없이 짜다보니

어휴...

 

 

1000줄만 넘어가면 이게 무슨 말인지...

도스에서도 C++컴파일러를 이용하기는 했지만

그저 C++을 빙자한 C프로그램을 했던것 같아요...

요즘 깨달았죠..

개념자체를 바꿔야겠다고...

그리고 결심했죠...

객체지향적인 프로그램을 짜자고...

하지만

 

 

도대체 객체지향이란 무엇인지?

 

 

출간되는 책들을 보면 보통 객체지향 언어의 사용법에 대한

책들만 있지 개념자체를 설명해주는 책은 드물더군요..

 

그래서 여기저기 뒤지다가 나우에서 괜찮은 강좌를 얻었습니다.

OOP의 개념에 대한 설명이 쉽게되어 있어서 올립니다.

다음 강좌는 OOP에 대한 개념자체를 설명한 글이지 언어의 사용법에 대한 글이 아닙니다.

OOP의 개념

전산을 공부하고 있는 많은 사람들로부터 시선을 모으고 있는

OOP 에 대한 개론적인 성격의 글들을 아래와 같은 순서로 네번에 걸쳐서 올립니다.

OOP라는 새로운 개념에 도전하시려고 하는분들에게 많은 도움이 되리라 생각됩니다 ​

 

 

OOP (Object-Oriented Programming) 개론

<1> Object-Oriented Programming의 등장
<2> Object-Oriented 방법의 기본 개념 : Object, Message, Class
<3> Object-Oriented 방법을 이용한 Software의 구축
<4> Object-Oriented 방법의 장점과 단점 ​

 

<1> Object-Oriented Programming의 등장

1. 소프트웨어 위기 (Software Crisis) 컴퓨터가 출현하고

그 기능이 발달함에 따라 우리들은 그것을 사용하여 보다

편리하고 윤탁한 생활을 하게 되었다.

 

그에 따라 소프트웨어의 수요가 기하급수적으로 증가하였으나

사실상 공급이 수요를 따라가지 못하고 있다.

 

하드웨어의 발전은 눈부시도록 놀라운데 그에 비하면

소프트웨어의 발전은 그 발치에도 미치지 못하고 있는 것이다.

 

이러한 위기상황 속에서 이를 극복하고자 하는

노력을 구체적인 방법론으로 표현한 것이

소프트웨어 공학 (SE : Software Engineering)인데, Object-Oriented Programming(Paradigm)도

바로 이 SE의 한 범주에 속한다고 할 수 있겠다.

2. 소프트웨어의 구성 방법의 변천 초창기에는 모든 소프트웨어를

단지 하나의 procedure로 만들어 냈다.

 

그러나 많은 시간과 여러 사람의 노력이 필요한

큰 시스템을 구축하려고 할 때에 이런 방법은 적절하지 못하다.

 

큰 프로그램을 각 기능별로 여러개의 Subroutine으로 나누어(functional decomposition) 독립적인

부분으로 만들어(modularization) 여러사람에게 할당하고,

각각의 모듈이 완성된 후에는 그것들을 서로 짜맞추어 하나의 시스템으로 완성했다.

 

이 modular programming과 함께 몇몇 규칙들을 적용하여 Structured Paradigm이라는

소프트웨어 구성방법이 생겨나 지금까지도 널리 사용되고 있다.

 

3. Structured 방법의 문제점 기존의 structured 방법은 처리(process)를 중심으로 하고 있다.

바로 이점이 문제가 되는 것이다.

 

데이타(data)는 단지 강의실에서의 칠판처럼 필요할때마다 지웠다하는

보조 수단으로 여겨 그다지 중요시하지 않았던 것이다.

 

요즘과 같은 정보의 홍수속에서 우리에게 데이타는 감당하지 못할 정도의 것이 되고 만 것이다.

많은 데이타를 공유해야만하게 되었고, 원하는 데이타를 여기저기 마구 불러 사용하는

이런 데이타의 공유가 바로 modular programming의 원리를 어기게되고,

따라서 모듈의 재활용성(reusablity)이 떨어지게 된 것이다.

 

DBMS(DataBase Management System)를 사용하여 이런 문제를

다소 해결 할 수는 있으나 이로서는 충분하지 않다.

4. Object-Oriented Paradigm의 등장 프로그램의 재활용성을 높이기 위해서는

modular Programming이 선행되어야 하고, 이를 위해서는 procedure뿐만이 아니라

데이타도 모듈화 되어야 한다는 방법론이 등장했으며

이것이 Object-Oriented Paradigm의 중요한 기본 요소가 되었다.

1960년대에 등장한 Simula는 현실세계를 simulation하는 것을 주목적으로 하는

프로그래밍 언어이며, 여기에서의 기본 개념이

바로 Object-Oriented paradigm의 효시가 되었다.

2편 계속................

728x90
반응형

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

델파이 객체지향이란?(2)  (2) 2023.06.12
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

댓글