객체지향 :: 2004/05/26 12:41

프로그래머라면 한번 이상씩은 머릿속에 정리하고 넘어가야할 객체지향. Object oriented.

객체지향이라는 번역에 문제가 있다는 의견도 있고, 정말 객체지향적인 프로젝트는 찾기 힘들다는 의견도 있고, 혹자는 다 이해했다고도 하지만, 정작 그 깊이는 잘 모를듯한 이상야릇한 개념이 아닐 수 없다.

간단하게나마, 나의 이해수준에서의 객체지향을 얘기하자면, 그럴듯하게 현실세계를 모델링하는것이다. 가능한한 현실세계와 유사하게 해야만, 변경,유지보수등 역시 쉬워지는 것이다. 여기에 물론 중요한점 한가지가 있다. 모델링은 드러낼것은 드러내지만, 그럴필요가 없는것은 드러내지 않는다는것. 학습이 일어나는 교실을 모델링한다할때, 교실내부유먼지의 무게등등은 굳이 드러낼 필요가 없는것이다.

더 나아가, 나는 객체지향이라는 소프트웨어 개발방법 아이디어가 현실세계를 바라보는 또 다른 관점을 제공한다고 생각한다. (이 생각은 김창준씨와의 대화에서 느낀바가 크다.) EightQueenProblem을 푼다고 할때, 절차적 프로그래밍에서는 전지전능한 관찰자(神)가 모든 규칙을 관할하고, 그가 queen들을 재 배열한다. 하지만, OOP에서는 8명의 queen, 즉 각 객체가 생명을 부여받고, 객체들이 직접 상호간에 interaction하면서 문제가 풀린다. 이 예는 우연찮게도, 인류사에 있어서의 인간의 사고방식과도 유사하다. 그 옛날 절대자에 의한 수동적 사고방식에서, 각 개인의 중요성을 인식하는 능동적 사고방식으로의 변화.

변화하는 관점은 특히도, 요즘같이 네트워크가 중요시되는 사회에 더욱 빛을 발한다. P2P, Grid등의 네트워크 프로그래밍에서 각각의 객체(컴퓨터)들은 서로 상호작용하고, 인간의 몸을 구성하는 각각의 객체(유전자, 단백질)들 역시 서로 상호작용함으로써 거대한 네트워크가 움직인다. 여기에 전지전능한 神은 놓여질 자리가 없다.
Trackback Address :: http://yong27.biohackers.net/trackback/54
  • 프로그래머는 神이다

    Tracked from Experiments never fail | 2008/02/19 17:47 | DEL

    아파트 공사장에 가본적이 있는가? 그곳에는 수많은 사람들이, 복잡한 설계도를 보고, 그들만의 방법론을 이용해서, 아파트를 지어나간다. 전기선도 들어가야하고, 하수구, 상수도, 전화선... 등등 모두 고려하다보면, 뭘 먼저만들고 뭘 나중에 만들어야하는지 등의 순서역시 중요하다. 프로그래밍의 메타포로 건축물이 많이 쓰여진다. (XP에서는 정원...) 아파트건축처럼 복잡한 그무언가가 단 한명 (혹은 단 몇명)의 머리속에서 그려지고, 구현되어진다. 이게 혼..

Name
Password
Homepage
Secret