# Message

  • 객체가 해결할 수 있는 문제 → 객체 내부에서 해결
  • 객체가 해결할 수 없는 문제 → 다른 객체에게 해결 요청

# SRP 를 준수하는 객체망이 문제 해결

  • 네트워크가 정상인지만 확인하는 객체
  • request 의 형식이 맞는지만 확인하는 객체
  • reponse 가 json 으로 바꾸는 객체
  • ...

하나의 통신을 완성할 때 여러 객체가 필요하다. 할일만 하고 다른 일들은 다른 객체가 한다. (위임한다)

단일 책임 원칙을 준수하는 객체에게 책임 이상의 업무를 부여하면?

  1. 만능 객체가 되려한다.
  2. 다른 객체에게 의뢰한다.
    • 다른 객체에게 메세지를 보내는것
    1. 메세지 - 의뢰 할 내용
    2. 오퍼레이션 - 메세지를 수신 할 객체가 제공하는 서비스
      • 객체.오퍼레이션(...) 오퍼레이션은 메소드와 매핑된다.
      • 동적바인딩을 지원하는 언어는
        • 오퍼레이션과 메소드가 다를 수 있다.
        • 객체의 상태에 따라 달라짐
      • 추상클래스를 상속받거나 인터페이스를 상속받는 이유
        • 오퍼레이션과 메서드를 분리해서 런타임에 원하는 것을 사용하기 위함 (OCP)
    3. 메소드 - 오퍼레이션이 연결 될 실제 처리기