더북(TheBook)

코드 4-2 SDKBot 구현

class SDKBot implements Bot {
  public void sendPrivateMessage(String userId, String msg) {
    var chatBot = new ChatBotV1(); <--- SDK의 챗봇 클래스를 인스턴스화한다.  
    var message = new BotMessage(userId, msg); <---  BotMessage를 합성한다. 이 클래스는 SDK의 일부분이다.  
    chatBot.writeMessage(message); <--- SDK가 제공하는 writeMessage() 메서드를 통해 봇에게 메시지를 전송한다. 
  }
}

어떤 상황에서든 BotMessage의 인스턴스를 코드의 다른 부분으로 반환해서는 안 된다. 이런 식으로 나머지 코드 기반이 SDK 라이브러리와 완전히 분리되며, 향후 구현을 변경할 수 있는 여지가 생긴다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.