티스토리 뷰

이 책의 1장에서는 객체지향을 실제 세계를 직접적이고, 직관적으로 모델링할 수 있는 패러다임 이라는 문장에 아래와 같이 해석하고 있다.

실세계의 모방이라는 객체지향의 개념은 훌륭한 프로그램을 설계하고 구현하는 실무적인 관점에서는 부적합하지만, 객체지향이라는 용어에 담긴 기본 사상을 이해라고 학습하는데 매우 효과적이다.

 

왜 훌륭한 프로그램의 설계에는 적합하지 않을까?!

하지만, 1장에서는 위 질문에 대한 대답은 주고 있지 않다. 오히려 실세계의 모방을 통해 객체지향의 개념에 대해 설명하고 있다.

 

객체지향이란 시스템을 상호작용하는 자율적인 객체들의 공동체로 바라보고, 객체를 이용해 시스템을 분할하는 방법이다.

 

  1. 자율적인 객체란, 상태를 직접 관리하고, 상태 가반으로 스스로 판단하고 행동할 수 있음을 의미한다.

  2. 객체는 다른 객체가 무엇을 하는지는 알 수 있지만, 어떻게 수행하는지는 알 수 없다

 

객체는 시스템의 행위를 구현하기 위해 다른 객체와 협력한다.

 

  1. 객체는 협력내에서 역할을 수행하고, 역할과 관련된 책임을 다한다.

  2. 객체는 다른 객체와 협력하기 위해 메세지를 전송하고, 메세지를 수신한 객체는 메세지를 자율적으로 처리한다.

 

요약하자면, “시스템의 기능이 동작한다” 라고 하면, 다음과 해석할 수 있다.

 

작은 책임으로 분할을 하고, 책임은 결국 적절한 객체들의 역할을 통해 수행된다. 객체들은 연쇄적인 메세지 전송 기반의 요청과 응답을 통해 역할을 수행한다. 객체가 요청에 따른 응답을 하기 위해서 스스로 자신의 상태를 확인하고, 그에 따른 행동을 응답한다.

 

더 요약하면, 객체들의 책임, 역할, 협력을 통해 기능이 동작한다.

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2024/04   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
글 보관함