책임 2

[객체지향의 사실과 오해] 5. 책임과 메시지

좋은 객체지향 시스템을 만들기 위해선 객체들이 어떻게 커뮤니케이션을 하냐에 달렸다. 이 커뮤니케이션을 하는 방법을 메시지라하며 메시지는 객체의 책임을 유발한다. 메시지가 얼마나 중요한지 알아보자. 자율적인 책임 자율적이란 스스로 의지를 가지고 있어 스스로 판단할수 있다는 의미이다. 객체는 메시지를 수신받아야만 책임을 수행한다. 이 책임은 수신받은 객체 즉, 수신자가 자신의 의지와 판단에 맞게 책임을 수행해야한다. 이렇게 객체가 얼마나 자율적인 책임을 가지고 있느냐가 객체지향 어플 전체의 품질을 결정한다. 그렇다면 자율적인 책임이 뭔지 보다더 자세히 알아보자. 자율적인 책임 예시 선생님이 학생에게 공부를 시켜야하는 상황을 가정해보자. 선생님 학생에게 '공부해'라는 메시지를 송신해야 학생은 메..

study with book 2021.08.28

[객체지향의 사실과 오해] 4. 역할, 책임, 협력

객체의 모양을 빚는 것은 객체가 참여하는 협력이다. 개별적인 객체의 상태나 행동이 아니라 객체들간의 협력에 집중하라!!! 협력 한 객체가 자신의 책임으로 해결할수 없을 때 다른 객체에게 도움을 받기 위해 요청을 한다. 이 객체는 또 자신의 책임으로는 해결할수 없을 때 다른 객체에게 요청을하고, 또 그 객체는 요청한다. 그리고 요청받은 객체는 응답한다. 이런 요청과 응답의 연쇄적인 흐름이 바로 협력이다. 협력은 연쇄적인 요청과 응답의 흐름으로 구성된다. 책임 객체가 어떠한 요청에 대해 대답할수 있거나 적절한 행동을 할 의무가 있는 경우 해당 객체는 책임이 있다고 한다. A객체가 B객체에게 요청을 전송할 경우에만 B객체는 책임을 수행한다. 즉, 다른 객체가 책임을 수행하도록 요청을 보내는 것을 메시지 전송이..

study with book 2021.08.20