Delegate 패턴 delegate 패턴은 mvc, mvvm... 처럼 디자인 패턴의 한 종류라고 한다. 하나의 객체가 모든 일을 다 처리하기 보다는 처리할 것 일부를 다른 객체에 넘기는 것이다. 스위프트에서는 delegate 디자인 패턴으로 작성할 때 보통 프로토콜을 많이 활용한다고 한다. '디자인 패턴'에 대한 정의는 a proven solution to a common problem 인데, 그럼 어떤 problem이 있었길래 delegate 디자인 패턴이 생긴 것일까? 예를 들어, UITextField 라는 클래스가 있다. UITextField를 참조하게 될 많은 클래스들이 텍스트 필드에 어떤 이벤트가 발생하면 UITextField로 부터 알림을 받고 싶을 것이다. 하지만 UITextField가 ..