C#에서 확장 메서드를 사용하여 정적 빌더 구현

기술적으로 빌더 패턴을 따르지는 않지만 확장 메소드로 구현된 정적 빌더는 동일한 기능을 달성하는 또 다른 방법입니다.

개인적으로 빌더패턴에서 완성 – Build() – 하지 않은 단계에서 내용을 수정할 수 있는 확장 메서드 방식은 저자의 의견과는 다르게 지양해야 한다는 입장입니다. 확장 메소드를 이용하면서 제가 원하는 방식으로 중간과정을 은닉하기 위해서는 인터페이스를 정의 – ISaladBuilder – 하여 노출하고 노출된 메소드는 WithTomatoes() 등이 되며 최종 Build() 메소드를 통해 Salad로 캐스팅 하는 방식은 어떨까요?

https://ilyana.dev/blog/2021-07-22-builder-static-extension/

1개의 좋아요