더북(TheBook)

NOTE

Q: 왜 인터페이스를 만드는지, 왜 LedTV라고 만들지 않고 TV 인터페이스 형식을 사용하는지 잘 모르겠어요.

 

A: 예제처럼 TV는 여러 필수 기능이 있습니다. 그러나 모델마다 기능이 조금씩 다르고, 설정도 다를 것입니다. 예를 들면 세 가지 모델이 있는데, 1번 모델은 볼륨을 한 번에 1씩 올리고 내리게 설정했고, 2번 모델은 볼륨을 한 번에 10씩, 3번 모델은 30씩 조절하게 설정했다고 생각해보세요. 하지만 '볼륨을 조절한다는 기능'은 여전히 공통된 필수 기능입니다. 설정이 조금 다를 뿐이죠.

인터페이스를 사용하면 클래스 하나로 저 기능들을 바로 구현할 수 있습니다. 호출하는 클래스만 변경해서요. 인터페이스를 사용하지 않으면 중복 기능들을 각 모델(클래스)마다 구현해야 하죠. 그래서 인터페이스를 사용합니다.

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