의미 복잡한 객체를 단계별로 만들 수 있게 해주는 디자인 패턴 문제 상황 집이라는 객체를 생성하고 싶을 때 사용하는 기존 방법에는 2가지가 있다. 상속을 마구마구 시키기 → 자식 클래스들이 감당할 수 없을만큼 많아질 수 있음 생성자에 가능한 옵션들을 다 추가
의미 특정 클래스의 객체들이 할 수 있는 일들을 여러가지 두고, 각 객체마다 사용자가 원하는대로 골라 시키거나 기능들을 필요에 따라 장착하게 할 때 사용 (참고: https://www.youtube.com/watch?v=q3_WXP9pPUQ) 문제 상황 알림 관련