Section 48.17: 예외적인 특수한 처리를 위해 확장 메소드 이용하기

확장 메소드는 호출하는 함수를 if/then 조합으로 뒤덮일 수도 있는 복잡한 비즈니스 로직을 숨기기 위해 사용될 수 있다. 이는 확장 메소드를 이용해 null 값을 처리하는 방식과 유사하다. 다음 예제를 확인한다:

public static class CakeExtensions { public static Cake EnsureTrueCake(this Cake cake) { // 만약 이 케익이 가짜라면, 조금 맛이 떨어지긴 하지만 절대 가짜일리는 없는 할머니의 케익으로 대체한다. 만약 이 케익이 가짜가 아니라면, 아무 일도 하지 않고 바로 해당 케익을 반환한다. return CakeVerificationService.IsCakeLie(cake) ? GrandmasKitchen.Get1950sCake() : cake; } } Cake myCake = Bakery.GetNextCake().EnsureTrueCake(); myMouth.Eat(myCake); // 가짜일 수 있다는 걱정 없이 케익을 바로 먹을 수 있다.
본 문서는 C# Notes for Professionals (라이센스:CC-BY-SA) 를 한글로 번역한 문서입니다. 번역상 오류가 있을 수 있으므로 정확한 내용은 원본 문서를 참고하세요.

[출처] https://books.goalkicker.com/CSharpBook/

반응형

+ Recent posts