빌더 패턴, 정말 안전할까? 더 나은 코드 품질을 위한 팁!
by DD
10개월 전
조회수 6
빌더 패턴 사용 시, 필수 인자 누락으로 인한 런타임 에러 발생 가능성 존재
생성자 또는 팩토리 함수를 활용하여 컴파일 타임에 오류를 감지하도록 개선
선택적 인자가 많거나, '생성 중' 상태를 처리해야 하는 경우, 빌더 패턴의 대안 제시
빌더 패턴의 함정: 런타임 에러
빌더 패턴은 유연성을 제공하지만, 필수 인자 누락 시 런타임 에러를 발생시킨다. checkNotNull과 같은 널(null) 검사 로직은 런타임에 문제를 발견하게 한다. 따라서, 생성자나 팩토리 함수를 사용하면 컴파일 시점에 오류를 감지하여 안정성을 확보할 수 있다.
생성자 vs 빌더: 트레이드오프 분석
생성자는 필수 인자를 명시적으로 요구하여 데이터 무결성을 보장한다. 빌더 패턴은 선택적 인자가 많은 경우 유용하지만, 코드 복잡도가 증가한다. 기본값을 활용하거나, 생성자 오버로딩을 통해 빌더 패턴의 단점을 보완하고, 코드 가독성을 높일 수 있다.
빌더 패턴의 올바른 활용법
빌더 패턴은 데코레이터 패턴과 결합하여 마지막 작업을 정의하는 경우 유용하다. 파이프라인과 같은 로직에서는 각 단계별로 다른 타입을 정의하여 유효하지 않은 상태를 방지한다. 따라서, 빌더 패턴은 상황에 맞게 적절한 설계를 통해 유지보수성을 향상시킬 수 있다.