본문 바로가기

객체지향의 사실과 오해-1장 협력하는 객체들의 공동체

ironwhale 2023. 5. 31.

객체지향 패러다임은 자율적인 객체의 협력이다. 

 위에 문장에서 이 책을 관통하는 큰 주제를 알 수 있습니다. 우선 객체라는 단어에서 객체지향의 중심은 클래스가 아니라 객체라는 점을 강조하고 있으며 객체는 자율적이다라는 말에서는 캡슐화 책임, 역할이라는 말이 숨겨져 있다고 생각합니다. 그리고 협력 말 그대로 객체들의 협력을 통해 하나의 목표를 달성한다는 뜻으로 이해하였습니다. 

 

객체지향의 목표는 실세계의 모방이 아니라 새로운 세계를 창조하는 것이다.  

 새로운 세계를 창조한다는 이 말이 이 책에서 가장 기억에 남는 말인거 같습니다. 단순히 실세계를 모방하는 복사기가 아닌 새로운 객체가 사는 세상을 만들어서 실생활의 문제를 해결한다는 멋진 의미가 내포되어 있다고 느꼈기 때문입니다. 저는 이 구절을 읽고 개발을 하면서 예를 들면 Coffee라는 클래스를 만들어서 coffee라는 객체를 만들면 이 coffee라는 객체는 자신에게 오는 요청을 스스로 판단해서 응답을 하는 살아있는 창조물을 만들고 있다는 느낌을 강하게 받았습니다. 

 

  객체는 앱(프로그램)의 기능을 구현하기 위해 존재하고 서로 협력하는 존재입니다. 협력을 위해 메세지를 주고 받고 메세지를 처리하기 위한 메소드(method)가 있습니다. 그리고 메세지를 수신한 객체는 메세지에 대해 적절한 응답을 해야 되는 책임이 존재합니다.  앞으로 이 책에서는 역할, 책임, 협력이 3가지 단어가 자주 등장하니 꼭 기억하시길 바라며 이만 마치겠습니다. 

 

클래스의 구조와 메서드가 아니라 객체의 역할, 책임, 협력에 집중하라. 객체지향은 객체를 지향하는 것이지 클래스를 지향하는 것이 아니다. 
-객체지향의 사실과 오해 38페이지

 

 

댓글