📌 목적

객체 생성과 타입 변환을 깔끔하고 안정적으로 처리하기 위한 패턴.

Builderfrom()조합해서 사용하는 것이 실무에서 가장 명확하고 유지보수에 강한 방식임.

🔧 각 개념 정리

✅ Builder 패턴

✅ from() 메서드


✅ Builder + from() 같이 쓰는 이유

이 두 가지를 조합해서 쓰면 단순히 "객체 생성 + 변환"을 넘어, 전체 애플리케이션의 코드 구조와 유지보수성이 향상됨.

장점 요약

항목 설명
책임 분리 from()은 변환, Builder는 생성 → 관심사 분리 명확
가독성 향상 체이닝 방식 + 깔끔한 변환으로 직관적
중복 제거 Entity ↔ DTO 간 변환 반복 코드 최소화
확장성 필드 추가/변경에도 from()만 고치면 끝
테스트 용이 객체 생성과 변환 로직 각각 독립적으로 테스트 가능
불변성 보장 setter 없는 객체도 생성 가능 (특히 DTO나 응답 객체에 적합)

✅ 언제 Builder + from()쓰는 게 좋은가