티스토리 뷰

객체지향과 객체 ↔ 현실

  • 사실, 객체지향의 목표는 실세계를 모방하는 것이 아님
  • 그렇다면?
    • 고객과 사용자를 만족시킬 수 있는 신세계를 창조하는 것이다.
  • 하지만 실세계의 모방이라는 설명은 객체지향의 다양한 측면에 대한 이해 및 학습을 돕는다.

협력하는 사람들 - 커피 공화국의 아침

요점

  1. 사람들은 서로 협력 관계에 있음
  2. 각자의 역할을 가짐
  3. 자신이 맡은 바 책임을 다함

요청과 응답으로 구성된 협력

  • 하나의 객체로 모든 것을 처리하기 버거움

→ 다른 객체에게 요청한다.

→ 요청은 연쇄적으로 발생

  • 주어진 책임을 다하고 요청에 대해 무언가를 제공한다.

→ 요청에 대해 응답한다.

→ 응답 역시 연쇄적으로 전달됨

  • 요청과 응답을 통한 협력

→ 복잡한 문제를 해결할 수 있는 공동체 형성

→ 협력의 성공은 특정 역할 맡은 각 개인이 얼마나 요청을 성실히 이행하는가에 달림

역할과 책임

  • 역할은 책임이라는 개념 내포
    • 역할은 관련된 책임의 집합
  • 사람들이 협력을 위해 특정 역할 맡고 적합한 책음 수행한다는 사실은 몇가지 중요한 개념을 내포한다
    1. 여러 사람 동일 역할 수행 가능
    2. 역할은 대체 가능성 의미
    3. 책임을 수행하는 방법은 자율적으로 선택 가능
      1. 상속과 다형성
    4. 한 사람이 동시에 여러 역할 수행 가능

협력 속에 사는 객체

  • 객체의 덕목
  1. 충분히 협력적이어야 한다.
  2. 충분히 자율적이어야 한다.

상태와 행동을 함께 지닌 자율적인 객체

  • 객체는 상태와 행동을 지닌 실체
  • 객체는 다른 객체가 무엇을 수행하는지는 알 수 있지만 어떻게 수행하는지에 대해서는 알 수 없다. → 캡슐화

협력과 메시지

  • 객체지향의 세계에서 오직 한 가지 의사소통 수단 ⇒ 메시지
  • 메시지 전송하는자 ⇒ 송신자
  • 메시지 수신하는자 ⇒ 수신자

메서드와 자율성

  • 수신된 메시지 처리 방법 ⇒ 메서드
  • 객체는 수신한 메시지를 처리하는데 적합한 메서드를 자율적으로 선택한다.

객체를 지향하라

코드를 담는 클래스보다는 메시지를 주고 받는 객체의 관점으로 사고의 중심을 전환하자!

객체의 역할, 책임, 협력에 집중하자

'학습 내용 > 책 내용 및 회고' 카테고리의 다른 글

Redis 자료구조  (0) 2024.04.30
2장 - 이상한 나라의 객체  (0) 2023.07.18
모던 자바 인 액션 - 2022-4-13  (0) 2022.04.13
모던 자바 인 액션 - 2022-3-30  (0) 2022.03.30
모던 자바 인 액션 - 2022-3-24  (0) 2022.03.27
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
TAG
more
«   2024/11   »
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
글 보관함