[c#] 확장 메서드 활용

확장 메서드를 작성하려면 해당 메서드가 적용될 데이터 유형에 대한 정적 클래스를 작성해야 합니다. 이 클래스에는 확장 메서드로 정의할 메서드가 포함되어 있어야 합니다. 해당 메서드는 첫 번째 매개변수에 this 키워드를 사용하여 해당 데이터 유형을 지정해야 합니다.

아래는 문자열 클래스에 확장 메서드를 추가하는 예시입니다:

public static class StringExtensions
{
    public static bool IsUpperCase(this string str)
    {
        // 문자열이 모두 대문자인지 확인하는 로직
        return !string.IsNullOrEmpty(str) && str.All(char.IsUpper);
    }
}

위의 코드에서는 StringExtensions 클래스에 IsUpperCase 메서드를 추가했습니다. 이 메서드는 this string str 매개변수를 통해 문자열에 적용됩니다. 이제 이 확장 메서드를 사용하여 문자열이 모두 대문자인지 쉽게 확인할 수 있습니다:

string text = "HELLO";
bool isUpper = text.IsUpperCase(); // true 반환

확장 메서드를 사용하면 기존 클래스의 기능을 보다 유연하게 확장할 수 있으며, 코드의 가독성과 유지 보수성을 향상시킬 수 있습니다.

참고 문서