[c#] 람다식을 사용하여 어떻게 유연한 콜백 함수를 구현할 수 있나요?

람다식을 사용하면 C#에서 간편하고 유연한 콜백 함수를 구현할 수 있습니다. 콜백 함수를 사용하면 메서드의 실행이 완료되거나 특정 이벤트가 발생했을 때 다른 코드를 실행할 수 있습니다. 람다식을 사용하면 이러한 기능을 간단하게 구현할 수 있습니다.

람다식 기본 개념

람다식은 익명 함수로, 메서드나 델리게이트에 대한 매우 간결한 표현 방식입니다. 람다식은 => 기호를 사용하여 정의되며, 입력 매개변수와 식의 본문으로 구성됩니다.

// 람다식 예시
Action<int> printNumber = (num) => Console.WriteLine(num);

콜백 함수와 함께 사용

람다식은 콜백 함수를 정의할 때 유용하게 활용됩니다. 예를 들어, 이벤트가 발생했을 때 특정 작업을 수행하도록 콜백 함수를 등록하는 경우에 람다식을 사용할 수 있습니다.

// 콜백 함수 등록 예시
public class EventPublisher
{
    public event Action<int> NumberEvent;

    public void DoSomething(int number)
    {
        // 작업 수행 후 콜백 함수 호출
        NumberEvent?.Invoke(number);
    }
}

// 람다식을 사용하여 콜백 함수 등록
var publisher = new EventPublisher();
publisher.NumberEvent += (num) => Console.WriteLine($"Received number: {num}");

장점

  1. 간결한 코드: 람다식을 사용하면 콜백 함수를 간결하게 표현할 수 있어 코드의 가독성을 높일 수 있습니다.
  2. 현장적응성: 코드 영역 내에서 간단하게 콜백 함수를 정의할 수 있어서 다양한 상황에서 유연하게 활용할 수 있습니다.

람다식을 통해 유연하고 간결한 콜백 함수를 구현할 수 있으며, C#에서 이를 활용하여 다양한 기능을 구현할 수 있습니다.

참고 자료