λ‚˜μ˜ μ„±μž₯ 일지 πŸƒ‍♂️

[회고] 클린 μ•„ν‚€ν…μ²˜ μ±… μŠ€ν„°λ”” 및 λ―Έλ‹ˆ ν”„λ‘œμ νŠΈλ₯Ό 마치며

GroovyArea 2022. 11. 20. 19:53

졜근 μ‹ μž… 개발자둜의 여정을 μ‹œμž‘ν•˜κΈ° μœ„ν•΄ μ±„μš© μ—°κ³„ν˜• 인턴십, μ‹ μž… 곡채λ₯Ό 보고 ν™•μΈν•˜λ©° μ„œλ₯˜ 지원을 ν•˜κ³  μžˆλ‹€.

μ—¬μ „νžˆ ν•  일은 μ‚°λ”λ―Έμ§€λ§Œ, 쑰금 더 μ‹œκ°„μ„ 효율적으둜 써가며 λ°œμ „ν•˜κ³  싢기에 읽고 μ‹Άμ—ˆλ˜ 책을 κ°€μ§€κ³  μŠ€ν„°λ””λ₯Ό ν•˜λ©΄ μ–΄λ–¨κΉŒλΌλŠ” 생각을 ν–ˆμ—ˆλ‹€.
마침 같은 μ—¬μ • 길에 μ˜¬λΌμžˆλŠ” μΉœκ΅¬κ°€ λ– μ˜¬λžκ³ , μ œμ•ˆμ„ μˆ˜λ½ν•˜μ—¬ λ§Œλ“€λ©΄μ„œ λ°°μš°λŠ” 클린 μ•„ν‚€ν…μ²˜λΌλŠ” 책을 κ°€μ§€κ³  2μ£Ό κ°„μ˜ μŠ€ν„°λ””λ₯Ό λ§ˆμ³€λ‹€.

이 책을 읽고 μ†Œν”„νŠΈμ›¨μ–΄μ˜ 섀계적 고민에 ν•œμΈ΅ 더 깊이 λΉ μ§€κ²Œ 됨과 λ™μ‹œμ— μƒˆλ‘œμš΄ μ„ΈμƒμœΌλ‘œμ˜ λ°œμ„ λ””λ”˜ λŠλ‚Œμ΄ λ“€μ—ˆλ‹€.
섀계 λ‚΄μš©μ€ ν‰μ†Œμ— κ°€μž₯ 많이 κ³ λ―Όν–ˆλ˜ 뢀뢄인지라 책이 이해가 잘 λ˜μ—ˆμ—ˆκ³ , μ• λ§€ν–ˆλ˜ 뢀뢄을 2νšŒλ…, λ‹€λ₯Έ κ΄€μ μœΌλ‘œ 읽어보렀 3 νšŒλ…ν•˜λ©° 완독을 ν–ˆλ‹€.

μ£Όκ΄€μ μ΄μ§€λ§Œ 개발 곡뢀λ₯Ό ν•˜λ©° λ“œλŠ” 생각은 μ–΄λ–€ κ°œλ…μ„ 곡뢀할 λ•Œ 미리 μΆ©λΆ„νžˆ κ³ λ―Ό ν•΄λ³Έ μƒνƒœμ—μ„œ 책을 읽으면 훨씬 μˆ˜μ›”ν•˜κ²Œ 받아듀일 수 μžˆκ² λ‹€λŠ” 생각을 ν–ˆλ‹€.
μ˜ˆμ „μ— ν† λΉ„μ˜ μŠ€ν”„λ§, real mysql 책을 μ·¨μ€€ μ΄ˆλ°˜μ— μ½μ—ˆλ˜ 기얡이 μžˆλ‹€. μŠ€ν”„λ§μ΄μ•Ό 계속 써였던 거라 μ’€ λœν•˜μ§€λ§Œ, real mysql은 정말 μ΄ν•΄λ˜λŠ” 뢀뢄이 손에 κΌ½μ•˜λ‹€. 그만큼 사전에 DBλ₯Ό μΆ©λΆ„νžˆ 닀뀄보지 μ•Šμ€ μƒνƒœμ—μ„œ λ¬΄μž‘μ • κ°œλ…μ„ λ•Œλ € λ°•λŠ” 것은 λŒ€λ‹¨νžˆ λΉ„νš¨μœ¨μ μ΄λΌλŠ” 이유λ₯Ό λͺΈμœΌλ‘œ μŠ΅λ“ν•˜λ©° μ΄ν•΄ν–ˆμ—ˆλ‹€.
λ‹€μ‹œλŠ” 같은 μ‹€μˆ˜λ₯Ό λ°˜λ³΅ν•˜μ§€ μ•Šμ•„μ•Όμ§€.

짧은 2μ£Όκ°„μ˜ μŠ€ν„°λ””λ₯Ό 마치며 λ™μΌν•œ 주제둜 각자 클린 μ•„ν‚€ν…μ²˜ 섀계λ₯Ό λ”°λ₯Έ λ―Έλ‹ˆ ν”„λ‘œμ νŠΈλ₯Ό ν•΄λ³΄μžλŠ” 이야기가 λ‚˜μ™”λ‹€. 쒋은 μ˜κ²¬μ΄μ—ˆκΈ°μ— ν”μΎŒνžˆ μˆ˜λ½μ„ ν–ˆκ³ , μš°μ„  μˆœμœ„μ˜ 일듀을 마치고 κΈ‰ν•˜κ²Œ ν”„λ‘œμ νŠΈλ₯Ό κ΅¬μƒν•˜λ©° μ§„ν–‰ν–ˆλ‹€.

λ‚˜λŠ” 학ꡐλ₯Ό 였고 κ°€λŠ” 쀑 μ§€ν•˜μ² μ—μ„œ λ¬΄μ˜λ―Έν•˜κ²Œ λ³΄λ‚΄λŠ” μ‹œκ°„μ΄ μ‹«μ–΄ 개발 μ„œμ λ“€μ„ μ½λŠ”λ‹€. μš”μ¦˜ 읽고 μžˆλŠ” 책은 DDD μ² μ € μž…λ¬Έμ΄λΌλŠ” 일본 κ°œλ°œμžκ°€ μ“΄ 책인데, C# μ½”λ“œμΈ 점만 λΉΌλ©΄ μ•„μ£Ό μœ μ΅ν•˜λ‹€.

클린 μ•„ν‚€ν…μ²˜ 예제 μ½”λ“œλ„ μ•½κ°„μ˜ DDD κ°œλ…μ„ ν† λŒ€λ‘œ μž‘μ„±λ˜μ—ˆκΈ°μ— μ§€κΈˆκΉŒμ§€ κ³΅λΆ€ν•œ λ²”μœ„κΉŒμ§€μ˜ DDD κ°œλ…μ„ μ ‘λͺ©μ‹œν‚€λ©° 해봐도 μ’‹κ² λ‹€λŠ” 생각을 ν–ˆλ‹€.
도메인을 κ΅¬μƒν•˜λŠ”κ²Œ μ§„μ§œ 개 였래 κ±Έλ Έλ‹€. κ±°μ§„ 이틀 μ†Œλͺ¨ν–ˆλ‹€.
ꡬ상이 λλ‚˜κ³  λ‚˜λ¨Έμ§€ JPA entity, 포트, 계측 별 μ„€κ³„λŠ” 거의 λΉ„μŠ·ν•˜κ²Œ 예제λ₯Ό λ”°λΌν•œ 감이 μžˆλ‹€.
μ‹œκ°„μ΄ λ„ˆλ¬΄ 없기도 ν–ˆκ³ , λ―Έλ‹ˆ ν”„λ‘œμ νŠΈμ΄κΈ°μ— λ„ˆλ¬΄ κ±°μ°½ν•œ κ²ƒλ³΄λ‹€λŠ” λ„λ©”μΈλ§Œ λ°”κΏ”μ„œ ν™•μ‹€ν•˜κ²Œ λ‚΄ κ²ƒμœΌλ‘œ λ§Œλ“€μžλŠ” 생각을 μ€‘μ μ μœΌλ‘œ ν–ˆλ‹€.

이제 μ•„ν‚€ν…μ²˜μ  고민을 ν•˜λ©° 처음으둜 μ„€κ³„ν•œ λ―Έλ‹ˆ ν”„λ‘œμ νŠΈλ₯Ό μ‹œμž‘μœΌλ‘œ 좔후에 λ§Œλ“€κΈ°λ‘œ κ³„νšν•œ ν”„λ‘œμ νŠΈμ—λŠ” DDD와, 포도 책을 읽고 μŒ“μ€ 지식을 ν† λŒ€λ‘œ 도메인 주도 μ„€κ³„λ‘œμ˜ 여정을 λ– λ‚œλ‹€.

곡뢀할 것은 λŠμž„ μ—†μ§€λ§Œ κ²°κ΅­ μ‚¬λžŒμ΄ λ§Œλ“ , 읽기 μ‰¬μš΄ μ†Œν”„νŠΈμ›¨μ–΄λ₯Ό μ§€ν–₯ν•˜κ³ μž ν•˜λŠ” μΆœλ°œμ μ—μ„œ μ‹œμž‘ν•œ ν•™λ¬Έλ“€μ΄λ―€λ‘œ κ³΅λΆ€ν•˜λŠ” 쀑간쀑간에 λ‚˜λ¦„ ν₯λ―Έλ₯Ό λŠλ‚€λ‹€.

λ‚΄ λ‘λ‡Œμ˜ λ¦¬μ†ŒμŠ€λ₯Ό 잘 λ°°λΆ„ν•΄κ°€λ©° 효율적으둜 곡뢀λ₯Ό ν•΄λ‚˜κ°€μžλŠ” 생각을 ν•΄λ³Έλ‹€.



λ°˜μ‘ν˜•