Builder Pattern

μΆ”μ²œν•˜λŠ” μ‚¬μš©λ²•

  • 정적 νŒ©ν† λ¦¬ λ©”μ„œλ“œμ™€ ν…ŒμŠ€νŠΈ μ½”λ“œμ—μ„œλ§Œ ν•œμ •μ μΈ μ‚¬μš©μ„ ꢌμž₯ν•©λ‹ˆλ‹€.

단점

  • nullsafe ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.

    • 예λ₯Ό λ“€λ©΄ λ³€μˆ˜κ°€ μΆ”κ°€λ˜μ–΄λ„ 컴파일 였λ₯˜κ°€ λ°œμƒν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.

기타

  • 컴파일 였λ₯˜κ°€ λ°œμƒν•˜μ§€ μ•ŠλŠ”λ‹€λŠ” 단점은 정적 νŒ©ν† λ¦¬ λ©”μ„œλ“œμ™€ ν…ŒμŠ€νŠΈ μ½”λ“œμ—μ„œλ„ κ°™μ§€ μ•Šμ€κ°€?

    • κ·Έλ ‡μ§€λ§Œ μ‚¬μš©λ˜λŠ” 곳을 ν•œμ •ν•¨μœΌλ‘œμ„œ 영ν–₯ λ²”μœ„λ₯Ό 쀄일 수 μžˆκΈ°μ—, 생산성과 νƒ€ν˜‘ν•©λ‹ˆλ‹€.

    • κ·Έ μ™Έ λŒ€ν‘œμ μΈ μ‚¬μš© λ°©λ²•μœΌλ‘œλŠ”

      • μ‚¬μš©ν•˜λŠ” 곳을 νŒ©ν† λ¦¬λ‘œ ν•œμ •ν•˜κ±°λ‚˜,

      • 도메인 κ°μ²΄λŠ” μƒμ„±μž, dtoλŠ” λΉŒλ” 생성을 ν•˜λŠ” λ“±μ˜ νŒ€ μ»¨λ²€μ…˜μ΄ μ‘΄μž¬ν•˜κΈ°λ„ ν•©λ‹ˆλ‹€.

    • κ·Έ 외에도 μ—¬λŸ¬κ°€μ§€ μ‚¬μš© 방법이 νŒ€ μ»¨λ²€μ…˜μœΌλ‘œ μ‘΄μž¬ν•˜μ§€λ§Œ, 보톡 μ œν•œλœ μ‚¬μš©μ„ ꢌμž₯ν•©λ‹ˆλ‹€.

  • λΉŒλ” νŒ¨ν„΄μ΄ 생산성에 영ν–₯을 λ―ΈμΉ  μ •λ„λ‘œ ν•„λ“œκ°€ λ§Žλ‹€λ©΄, 그것뢀터 μ˜μ‹¬ν•΄μ•Ό ν•©λ‹ˆλ‹€.

    • λ°˜λŒ€λ‘œ ν•„λ“œκ°€ μΆ©λΆ„νžˆ 적닀면 μƒμ„±μžλ‘œλ„ μΆ©λΆ„ν•  κ²ƒμž…λ‹ˆλ‹€.

    • lombok을 μ‚¬μš©ν•œλ‹€λ©΄ μƒμ„±μž μ–΄λ…Έν…Œμ΄μ…˜μ— staticName을 ν™œμš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

  • μ½”ν‹€λ¦°μ—μ„œλŠ” ν”„λ‘œνΌν‹° κ°œλ…κ³Ό λ””ν΄νŠΈ μƒμ„±μž λ“±μ˜ κ°œλ…μœΌλ‘œ μ’€ 더 μŠ€λ§ˆνŠΈν•œ 방법을 μ§€μ›ν•©λ‹ˆλ‹€.

Last updated

Was this helpful?