이전 포스트에서는 델리게이트에 아직 문제가 남아있다고 말씀드렸습니다.무엇이 문제인지 한번 확인해보겠습니다. 위와 같이 델리게이트를 호출해야 하는 함수가 아닌 외부에서 델리게이트를 호출할 수 있다는 문제가 존재합니다.실제 실행해보면 위와 같이 실행되는 것을 확인할 수 있습니다.지금의 코드에서는 단순히 로그를 찍는 코드이므로 큰 문제가 되지 않지만,사용자의 정보를 갱신하는 것과 같은 중요한 데이터를 다루는 코드라면 델리게이트는 아무렇게나 호출되어선 안됩니다.이는 코드의 흐름과 설계의 규칙에도 위배될 뿐만 아니라 프로그램의 데이터 역시 망가트릴 수 있습니다. 이러한 문제를 해결하기 위해 C#에서는 event 키워드를 제공합니다.event 키워드를 사용하는 경우에는 오직 구독한 존재만이 델리게이트를 호출할 ..