Blog: usual
TDA: Tell, Don't Ask

TDA: Tell, Don't Ask

링크 복사
링크가 복사되었습니다

묻지 말고, 시켜라.

객체의 상태를 물어보고 그 결과로 판단하지 말고, 객체에게 직접 작업을 시켜라.

❌ Ask

// 객체의 상태를 물어보고 외부에서 판단
if (user.getAge() >= 19) {
  user.setAdult(true);
}

✅ Tell

// 객체에게 작업을 위임
user.checkAndUpdateAdultStatus();

그렇게 해서

데이터를 꺼내서 처리하지 말고, 데이터를 가진 객체에게 처리를 맡겨라.