본문 바로가기

Project

객체 지향과 절차지향 단상.

 오늘 갑자기 떠오른 객체지향에 대한 단상을 그림으로 옮겨보았다.
(허접한 영어는 이해를..-_-)


 쉽게 설명을 하자면,

현실세계를 컴퓨터로 구현하는데 있어서 먼저 현실세계의 요구사항 및 제약사항을 파악하여
정리하는 일 즉 모델링 이란 작업이 필요하다.
그런 뒤에야 정의된 사양에 맞추어 구현하는 작업 즉 구현작업에 들어갈수가 있다.

여기서 프로그래밍에 두가지 틈이 생기게 되는데
1. 실세계를 모델링하는데 있어서 누락되는부분.
2. 모델링을 구현함에 있어서 부족한 부분.

객체지향이 인기를 끄는 이유는 1과 2번의 효과적인 보완에 있다.
이전의 모델링에 비하여 현실세계를 좀더 가깝게 모델링할수가 있고,
(OOAD로 통하는 UML , 객체지향 분석,설계 모델)
이전의 구현방법에 비하여 보다 충실하게 구현할수가 있다.
(OOP 및 디자인패턴)


p.s 미리 언급하는 그림의 오류
1. 문제정의 공간(problem definition space)에 있는 객체지향 , 절차지향이란 단어는 그 두가지로
모델링을 나눌수 있다라고 하기보다는 객체지향 모델링과 그 이외의 모델링을 효과적으로 대조시키기 위하여
일부러 절차지향은 언급함.

2. 문제 해결공간(problem solution space)에서 언급한 절차지향 방법또한 위의 맥락.