사용자가 너무 많은 인터페이스에 노출될 수 있다.
자료구조 인터페이스의 변경이 발생한다면 수정할 코드가 많아진다.
한 레스토랑에 손님과 주방, 그리고 서빙하는 웨이터가 있다.
손님은 메뉴판에 존재하는 메뉴를 선택해 웨이터에게 요청한다.
웨이터는 주방에 요청을 전달하고 주방에서는 정해진 메뉴 중 손님이 요청한 메뉴를 응답한다.
※ 이때 손님은 요리에 대해서 A 재료를 넣고, B 재료를 넣고 … 이러한 주방 사정을 알 필요가 없다.
public class Sensors {
private Map sensors = new HashMap();
public Sensor getById(Long id) {
return (sensor) sensors.get(id);
}
}