delegate

C# Action/Func/Predicate
Action Delegate .NET의 Action delegate는 하나의 파라미터를 받아들이고, 리턴 값이 없는 함수에 사용되는 Delegate이다. Action delegate는 System 네임스페이스에서 제공되는데, 파라미터의 수에 따라 0개부터 16개의 파라미터까지 받아들이는 delegate가 있다. 즉, 파라미터가 없는 Action은 Action delegate, 파라미터가 1개인 Action delegate, 2개인 Action delegate - 이렇게 16개 파라미터가 있는 Action delegate가 존재한다. 많은 함수의 경우 대개 3~5개의 파라미터까지 있는 걸로 본다면, 상당히 많은 함수에 대한 표준 delegate를 미리 만들어 둔것으로 보면된다. 물론 중요한 특징은 리턴 값..
C# Delegate Event 사용법
delegate 는 메서드를 가리킬 수 있는 타입의 간편 표기법. event도 간편표기법. event를 사용하면 정형화된 콜백 패턴을 구현하려할때 코드를 줄일 수 있음. - 조건 1. 클래스에서 이벤트(콜백)를 제공한다. 2. 외부에서 자유롭게 해당 이벤트(콜백)을 구독하거나 해지하는 것이 가능하다. 3. 외부에서 구독/해지는 가능하지만 이벤트 발생은 오직 내부에서만 가능하다. 4. 이벤트의 첫번째 인자는 이벤트를 발생시킨 타입의 인스턴스다. 5. 이벤트의 두번째 인자는 해당 이벤트에 속한 의미 있는 값이 제공된다. using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threadi..