쒋은 μ½”λ“œ, λ‚˜μœ μ½”λ“œ - 2

πŸ“–
Book
2024.05.21

book.jpeg


πŸ““ λ…μ„œν›„κΈ°

γ€Œμ’‹μ€ μ½”λ“œ, λ‚˜μœ μ½”λ“œγ€ λ…μ„œ ν›„κΈ°

  • PART 2. μ‹€μ „

    • 7μž₯. μ½”λ“œλ₯Ό μ˜€μš©ν•˜κΈ° μ–΄λ ΅κ²Œ λ§Œλ“€λΌ
    • 8μž₯. μ½”λ“œλ₯Ό λͺ¨λ“ˆν™”ν•˜λΌ
    • 9μž₯. μ½”λ“œλ₯Ό μž¬μ‚¬μš©ν•˜κ³  μΌλ°˜ν™”ν•  수 μžˆλ„λ‘ ν•˜λΌ
  • PART 3. λ‹¨μœ„ ν…ŒμŠ€νŠΈ

    • 10μž₯. λ‹¨μœ„ ν…ŒμŠ€νŠΈμ˜ 원칙
    • 11μž₯. λ‹¨μœ„ ν…ŒμŠ€νŠΈμ˜ μ‹€μ œ


γ€Œμ’‹μ€ μ½”λ“œ, λ‚˜μœ μ½”λ“œ - 1」 에 μ΄μ–΄μ„œ 남은 챕터듀을 λͺ¨λ‘ λ…μ„œν•œ λ’€ ν›„κΈ°λ₯Ό λ§ˆμ € λ‚¨κ²¨λ³΄λ €ν•œλ‹€.

4~5월은 νšŒμ‚¬ νŠΉμ„±μƒ μƒλ°˜κΈ° 곡채 μ‹œμ¦ŒμœΌλ‘œ 인해 ꡳ이 λ‚˜λˆ„μžλ©΄ μ„±μˆ˜κΈ°μ— 가깝기에 격 μ£Ό κ°„κ²©μœΌλ‘œ μ§„ν–‰ν•˜λ˜ β€œλ…μ„œν† λ‘ β€ 일정에도 쑰금 차질이 μžˆμ—ˆλ‹€. (μ ˆλŒ€ μ ˆλŒ€ 읽기 μ‹«μ–΄μ„œ 미룬게 μ•„λ‹ˆλ‹€.. πŸ₯²)

이번 책은 μ•„λ¬΄λž˜λ„ μ–΄λ €μš΄ λ‚΄μš©λ„ μžˆμ—ˆκ³  μ—…λ¬΄μ μœΌλ‘œ λ°”λΉ΄λ˜ μ‹œκΈ°μ΄κΈ°λ„ ν•΄μ„œ ν•œ κΆŒμ„ λͺ¨λ‘ μ½λŠ”λ° μ•½ ν•œλ‹¬ μ΄μƒμ˜ μ‹œκ°„μ΄ 걸리긴 ν•˜μ˜€μ§€λ§Œ κ·Έλž˜λ„ ν•œκΆŒμ„ λͺ¨λ‘ 읽고 λ‚œ λ’€μ˜ 총평을 남길 수 있게 λ˜μ–΄ κΈ°μ˜λ‹€.



7μž₯. μ½”λ“œλ₯Ό μ˜€μš©ν•˜κΈ° μ–΄λ ΅κ²Œ λ§Œλ“€λΌ


β€œμ½”λ“œλ₯Ό μ˜€μš©ν•˜κΈ° μ–΄λ ΅κ²Œ λ§Œλ“€λΌβ€ 7μž₯의 주된 λ‚΄μš© κ°„λ‹¨ν•˜λ‹€.

이 μ±…μ—μ„œλ„ μ œν’ˆ λ””μžμΈκ³Ό λΉ„κ΅ν•˜μ—¬ 잘 μ„€λͺ…ν•΄μ€€λ‹€.


β€œμ‹ν’ˆ κ°€κ³΅κΈ°μ˜ λ§Žμ€ λ””μžμΈμ€ λšœκ²…μ„ μ œλŒ€λ‘œ λΆ€μ°©ν•΄μ•Όλ§Œ μž‘λ™ν•œλ‹€. 이것은 손가락이 λ‚  κ·Όμ²˜μ— μžˆμ„ λ•Œ μ‹€μˆ˜λ‘œ 날이 νšŒμ „ν•˜λŠ” 것을 λ°©μ§€ν•˜κΈ° μœ„ν•œ 것이닀.”


img1.png

"쒋은 μ½”λ“œ, λ‚˜μœ μ½”λ“œ" page.202


μ½”λ“œλ„ μ œν’ˆκ³Ό λ§ˆμ°¬κ°€μ§€λ‘œ μ˜€μš©ν•˜μ—¬ 잘λͺ»μ‚¬μš©ν•˜μ§€ μ•Šκ²Œλ” μ„€λͺ…ν•˜λŠ” 것이 μ€‘μš”ν•˜λ‹€ κ°•μ‘°ν•œλ‹€.

β€œλΆˆλ³€ 객체λ₯Ό μ‚¬μš©ν•˜λŠ” 것을 고렀해라”, β€œλ””μžμΈ νŒ¨ν„΄μ„ 잘 μ„ νƒν•˜μ—¬λΌβ€, β€œμ§€λ‚˜μΉœ 일반 μœ ν˜•μ€ ν”Όν•˜λΌβ€.. λ“±λ“± 쒋은 κΈ€κ³Ό 사둀듀은 잘 μ½νžˆμ§„ μ•Šμ•˜μ§€λ§Œ πŸ₯² 맀번 강쑰해도 λΆ€μ‘±ν•œ λ‚΄μš©λ“€μ΄λ‹€.

특히, μ‹œκ°„ μ²˜λ¦¬μ— λŒ€ν•œ μ£Όμ˜μ‚¬ν•­μ€ 싀무 ν™˜κ²½μ—μ„œλ„ 많이 κ²ͺλŠ” μ΄μŠˆλ“€μ΄κΈ°μ— 곡감이 많이 κ°”λ‹€. (+μžλ°”μŠ€ν¬λ¦½νŠΈ μ§„μ˜μ—μ„œ js-joda μ„œλ“œ νŒŒν‹° 라이브러리 μΆ”μ²œλ„ κΈ°νšŒκ°€ 되면 κΌ­ 써볼 μ˜ˆμ •μ΄λ‹€.)



8μž₯. μ½”λ“œλ₯Ό λͺ¨λ“ˆν™”ν•˜λΌ


이번 μž₯은 β€œμ½”λ“œμ˜ μž¬μ‚¬μš©μ„±β€ κ΄€μ μœΌλ‘œ μ½”λ“œ λͺ¨λ“ˆν™”에 λŒ€ν•œ ν•„μš”μ„±μ„ κ°•μ‘°ν•˜λŠ” μ±•ν„°μ˜€λ‹€.

νŠΉνžˆλ‚˜ μ˜μ‘΄μ„± μ£Όμž… μ‚¬μš©μ„ 많이 κ°•μ‘°ν•˜μ˜€λŠ”λ°, μ‹€μ œλ‘œ λ‚΄κ°€ μ“°κ³  μžˆλŠ” ν”„λ ˆμž„μ›Œν¬μΈ NestJS μ§„μ˜μ—μ„œλ„ μ‹€μ œλ‘œ 많이 μ“°μ΄λŠ” 방법둠이기 λ•Œλ¬Έμ— ν₯미둭게 μ½μ–΄λ‚˜κ°ˆ 수 μžˆμ—ˆλ‹€.

μ‹€μ œλ‘œ μš°λ¦¬λŠ” κΈ°λŠ₯을 λ‹΄λ‹Ήν•˜λŠ” λ‹¨μœ„λ³„λ‘œ λͺ¨λ“ˆμ„ λ‚˜λˆ„κ³  λͺ¨λ“ˆμ„ κ΅¬μ„±ν•˜λŠ” μ„œλΉ„μŠ€ λ‹¨μœ„λ‘œ μ˜μ‘΄μ„± μ£Όμž…μ„ ν†΅ν•˜μ—¬ μ„œλ‘œμ˜ κΈ°λŠ₯을 κ³΅μœ ν•˜κ³  μžˆλ‹€.

AuthService μ—μ„œ 2μ°¨ 인증을 ν•˜κΈ° μœ„ν•˜μ—¬ 문자 λ°œμ†‘μ΄ ν•„μš”ν•˜λ‹€λ©΄ NotificationModule의 SmsServiceλ₯Ό μ£Όμž…λ°›μ•„ μ‚¬μš©ν•œλ‹€.

그리고 상속에 λŒ€ν•œ μ£Όμ˜μ‚¬ν•­ λ˜ν•œ ν₯미둭게 읽은 주제 쀑 ν•˜λ‚˜μ˜€λ‹€.

사싀 무차별 μƒμ†μœΌλ‘œ μΈν•˜μ—¬ μ›ν•˜λŠ” μ˜λ„ μ΄μƒμ˜ κΈ°λŠ₯을 λ…ΈμΆœν•  수 μžˆκΈ°μ— 좔상화 계측이 λ³΅μž‘ν•΄ 질 수 μžˆλ‹€λŠ” μ£Όμ˜μ‚¬ν•­μ΄μ—ˆλ‹€.

7μž₯κ³Ό 8μž₯은 객체 μ§€ν–₯ ν”„λ‘œκ·Έλž˜λ°(OOP) κ΄€μ μœΌλ‘œ 바라 λ³Έ μ½”λ“œ μ„€κ³„μ˜ μ£Όμ˜μ‚¬ν•­μ„ μ „λ°˜μ μœΌλ‘œ ν™˜κΈ°μ‹œν‚€λŠ” μ±•ν„°μ˜€λ‹€. (κ·Έλž˜μ„œ 재미..λŠ” λ„ˆ~~무 μ—†μ—ˆλ‹€. πŸ˜‚)



9μž₯. μ½”λ“œλ₯Ό μž¬μ‚¬μš©ν•˜κ³  μΌλ°˜ν™”ν•  수 μžˆλ„λ‘ ν•˜λΌ


이번 μ±•ν„°μ—μ„œλŠ” κ°€μž₯ ν₯λ―Έλ‘œμ› λ˜ λ¬Έμž₯을 꼽으라면 μ•„λž˜ λ¬Έμž₯을 κΌ½κ³ μ‹Άλ‹€.


β€œμ„£λΆ€λ₯Έ μ΅œμ ν™”λ₯Ό ν”Όν•˜λΌ.”


img2.png

"쒋은 μ½”λ“œ, λ‚˜μœ μ½”λ“œ" page.283


개인적인 의견으둜 μ΅œμ ν™”λŠ” β€œκ΅¬ν˜„β€ 단계 λ³΄λ‹€λŠ” β€œμœ μ§€λ³΄μˆ˜β€ 단계 이후에 생각할 수 μžˆλŠ” μš”μ†ŒλΌ μƒκ°ν•˜κΈ°λ„ ν•˜κΈ° λ•Œλ¬Έμ— μœ„ λ‚΄μš©μ— λŒ€ν•΄μ„œλŠ” 깊히 κ³΅κ°ν•˜μ˜€λ‹€.

μš°μ„  κ΅¬ν˜„μ— μ§‘μ€‘ν•œ λ’€, μ–΄λŠ λΆ€λΆ„μ—μ„œ λ©”λͺ¨λ¦¬ λˆ„μˆ˜κ°€ μžˆλŠ”μ§€ ν˜Ήμ€ μ½”λ“œμ˜ 쀑볡이 μžˆλŠ”μ§€ λ“±λ“±.. 기타 κ°œμ„ ν•  수 μžˆλŠ” μš”μ†Œλ“€μ„ κ΄€μΈ‘κ³Ό μΈ‘μ •μ„ν•˜λ©΄μ„œ κ°œμ„ ν•΄λ‚˜κ°€λŠ” 것이 개발자둜써 κ°€μž₯ μ€‘μš”ν•œ 덕λͺ©μ΄λΌ μƒκ°ν•œλ‹€.



10μž₯ ~ 11μž₯. λ‹¨μœ„ ν…ŒμŠ€νŠΈ


10μž₯κ³Ό 11μž₯은 λ¬Άμ–΄μ„œ ν•œλ²ˆμ— ν›„κΈ°λ₯Ό 남겨보렀 ν•œλ‹€.

μš°μ„  β€œλ‹¨μœ„ ν…ŒμŠ€νŠΈβ€λΌλŠ” μ£Όμ œλŠ” 개발자 μ„œμ μ„ μ—¬λŸ¬κΆŒ 읽을 λ•Œλ§ˆλ‹€ 항상 λ‚˜μ˜€λŠ” μ£Όμ œμ΄κΈ°λ„ν•˜λ©° μ–Έμ  κ°€λŠ” ν…ŒμŠ€νŠΈ μ½”λ“œλ₯Ό μž‘μ„±ν•΄μ•Όμ§€..ν•˜λ©° 미뀄둔 μˆ™μ œκ°™μ€ λ‚΄μš©μ΄κΈ° 떄문이닀.

μš°μ„  이번μž₯을 읽으며 κ°€μž₯ κ³΅κ°λ˜μ—ˆλ˜ 뢀뢄은 μ•„λž˜μ™€ κ°™λ‹€.


β€œκ³ μ „μ£Όμ˜μž classicist : λ•Œλ‘œλŠ” β€˜λ””νŠΈλ‘œμ΄νŠΈ ν•™νŒŒβ€™λΌκ³  일컬어진닀. λͺ©κ³Ό μŠ€ν…μ€ μ΅œμ†Œν•œμœΌλ‘œ μ‚¬μš©λ˜μ–΄ μ•Ό ν•˜κ³  κ°œλ°œμžλŠ” ν…ŒμŠ€νŠΈμ—μ„œ μ˜μ‘΄μ„±μ„ μ‹€μ œλ‘œ μ‚¬μš©ν•˜λŠ” 것을 μ΅œμš°μ„ μœΌλ‘œ ν•΄μ•Ό ν•œλ‹€κ³  μ£Όμž₯ν•œ λ‹€. μ‹€μ œ μ˜μ‘΄μ„±μ„ μ‚¬μš©ν•˜λŠ” 것이 κ°€λŠ₯ν•˜μ§€ μ•Šμ„ λ•Œ, 페이크λ₯Ό μ‚¬μš©ν•˜λŠ” 것을 μ„ ν˜Έν•œλ‹€. λͺ©κ³Ό 슀 텁은 μ‹€μ œ μ˜μ‘΄μ„±μ΄λ‚˜ 페이크λ₯Ό μ‚¬μš©ν•˜λŠ” 것이 λΆˆκ°€λŠ₯ν•  λ•Œλ§Œ μ΅œν›„μ˜ μˆ˜λ‹¨μœΌλ‘œ μ‚¬μš©λ˜μ–΄μ•Ό ν•œλ‹€.”


img3.png

"쒋은 μ½”λ“œ, λ‚˜μœ μ½”λ“œ" page.344


λ’€ 이어 μ €μžλ„ ν•΄λ‹Ή 이둠에 λ™μ‘°ν•˜λŠ” μ£Όμž₯을 νŽΌμΉœλ‹€.

사싀 κ±°μ°½ν•˜κ²Œ ν’€μ–΄μ„œ μ“΄ κΈ€μ΄μ§€λ§Œ κ°€μ§œ 객체등을 생성해 λ‚΄μ„œ μ „λ°˜μ μΈ ν…ŒμŠ€νŠΈλ₯Ό μˆ˜ν–‰ν•˜λŠ” 것은 μ™ μ§€ λͺ¨λ₯Ό 거뢀감이 λ“ λ‹€λž„κΉŒ.. λ¬Όλ‘ , μ§€κ·Ήνžˆ 개인적인 μ˜κ²¬μž…λ‹ˆλ‹€.

μ•„λ¬΄νŠΌ 이번 μ±…μ—μ„œλ„ PART 3κ°€ λͺ¨λ‘ λ‹¨μœ„ ν…ŒμŠ€νŠΈμ— λŒ€ν•œ λ‚΄μš©μœΌλ‘œ κ΅¬μ„±λ˜μ—ˆμ„ 만큼, 그에 λŒ€ν•œ μ€‘μš”μ„±μ„ κ°•μ‘°ν•˜κ³  μžˆλ‹€.

μ°½ν”Όν•˜κ²Œλ„ 이런 개발 μ„œμ μ„ 읽을 λ•Œλ§ˆλ‹€ κ°•μ‘°λ˜λŠ” ν…ŒμŠ€νŠΈ μ½”λ“œμ˜ μ€‘μš”μ„±μ„ 읽고 λ‚˜μ„œλ„ μ•„μ§κΉŒμ§€ ν…ŒμŠ€νŠΈ μ½”λ“œλ₯Ό μž‘μ„±ν•˜μ§€ μ•Šκ³  μžˆμ—ˆλ‹€. (κΈ‰λ³€ν•˜κ²Œ λ°”λ€ŒλŠ” λΉ„μ¦ˆλ‹ˆμŠ€ μš”κ΅¬μ‚¬ν•­ λ•Œλ¬Έμ— κ΅¬ν˜„μ΄ λ°”λΉ΄λ‹€..λΌλŠ” 핑계λ₯Ό λŒ€λ³Έλ‹€.)



쇠뿔도 단김에 뽑아보렀고 κ°„λ‹¨ν•œ λΉ„μ¦ˆλ‹ˆμŠ€ μ„œλΉ„μŠ€ λ‘œμ§μ— μœ λ‹› ν…ŒμŠ€νŠΈλ₯Ό μ μš©ν•΄λ³΄μ•˜λ‹€.


img5.png

μ‹€μ œλ‘œ μ—¬λŸ¬ λΉ„μ¦ˆλ‹ˆμŠ€ μš”κ΅¬μ‚¬ν•­ λ•Œλ¬Έμ— μ‚¬μš©λ˜κ³  μžˆλŠ” μ‘μš©ν”„λ‘œκ·Έλž¨ 배포 λͺ©μ μ˜ electron-builder


μ°½ν”Όν•˜κ²Œλ„ ν…ŒμŠ€νŠΈ μ½”λ“œκ°€ κ²€μ¦ν•˜λŠ” 컀버리지가 μ•„μ£Ό μž‘κ³  μ†Œμ€‘ν•˜λ‹€. πŸ˜…

앱을 λΉŒλ“œν•˜λŠ” κ³Όμ •μ—μ„œ 휴먼 μ—λŸ¬λ₯Ό λ°©μ§€ν•˜λŠ” λͺ©μ μœΌλ‘œ μš°μ„  μž‘μ„±ν•΄λ³Έ μ•„μ£Ό κ°„λ‹¨ν•œ ν…ŒμŠ€νŠΈ μ½”λ“œμ΄λ©° 점차 ν…ŒμŠ€νŠΈ 컀버리지λ₯Ό λ„“ν˜€ λ³Ό 생각이닀.

μ‹€μ œλ‘œ ν…ŒμŠ€νŠΈ μ½”λ“œλ₯Ό μž‘μ„±ν•΄λ³΄λ‹ˆ 쑰금 더 깊게 μ±…μ˜ λ‚΄μš©μ΄ λ‹€κ°€μ™”μœΌλ©°, 이 μ‹œμ μ„ κΈ°μ€€μœΌλ‘œ μ½”λ“œλ₯Ό μž‘μ„±ν•  λ•Œ ν…ŒμŠ€νŠΈ μ½”λ“œλ₯Ό μ—Όλ‘ν•˜κ³  μž‘μ„±ν•΄λ³΄λ €κ³  λ…Έλ ₯ν•΄λ³΄κ³ μž ν•œλ‹€.



πŸ€” Understanding

μš°μ„  슀슀둜 λΏŒλ“―ν•œ 점은 개발 μ„œμ μ„ μ—¬λŸ¬ κΆŒμ„ 읽으며 항상 λ‚˜μ˜€λŠ” λ‹¨μœ„ ν…ŒμŠ€νŠΈλ₯Ό β€œλ‚˜μ€‘μ— λ„μž…ν•΄μ•Όμ§€..” 라고 미루고 미뀘던 μˆ™μ œλ₯Ό λ“œλ””μ–΄ μ‹€μ œ μ„œλΉ„μŠ€ λ‘œμ§μ— λ„μž…ν•˜μ˜€λ‹€. (λ„ˆλ¬΄λ‚˜λ„ λŠ¦μ—ˆμ§€λ§Œ 말이닀. ⏰)

κ·Έμ € κ΄€ν–‰μ²˜λŸΌ 책을 읽으며 λ…μ„œ ν›„κΈ°λ§Œ λ‚¨κΈ°λŠ” κ±Έ λ„˜μ–΄μ„œ μ‹€μ²œκΉŒμ§€ μ΄μ–΄μ§ˆ 수 μžˆμ—ˆλ˜κ±΄, νŒ€ λ‹¨μœ„λ‘œ ν•¨κ»˜ 책을 읽으며 λŠλ‚€ 점을 μ„œλ‘œ κ³΅μœ ν•˜κ³  μ„œλ‘œμ˜ 생각과 보고 λŠλ‚€μ μ„ μ‹œκ°ν™” ν•˜μ—¬ λ³΄μ—¬μ£ΌλŠ” ν† λ‘ κΉŒμ§€ μ΄μ–΄μ‘ŒκΈ° λ•Œλ¬Έμ΄μ§€ μ•Šμ„κΉŒλΌκ³  μƒκ°ν•œλ‹€.

μ΄λ ‡κ²Œ λ„ˆλ¬΄λ‚˜λ„ 쒋은 λ¬Έν™”μž„μ—λŠ” λΆ„λͺ…ν•˜μ§€λ§Œ, 책을 쫓겨 μ½λŠ” λ“―ν•œ 후일담이 많이 κ³΅μœ λ˜μ—ˆκΈ°μ— (λ‚˜ λ˜ν•œ κ·ΈλŸ¬ν–ˆλ‹€. πŸ˜‚) 이번 책을 μ΄ν›„λ‘œ 격주가 μ•„λ‹Œ ν•œλ‹¬ λ‹¨μœ„λ‘œ 책을 읽고 λŠλ‚€ 점을 κ³΅μœ ν•˜κΈ°λ‘œ 일정을 μ‘°μœ¨ν•˜μ˜€λ‹€.



이번 책에 λŒ€ν•œ μ „λ°˜μ μΈ λ‚΄μš©μ„ μš”μ•½ν•˜μžλ©΄ γ€Œμ’‹μ€ μ½”λ“œ, λ‚˜μœ μ½”λ“œ - 1」 μ΄ν‰μ—μ„œλ„ μ–ΈκΈ‰ν–ˆλ“―μ΄ γ€ŒClean Code」 μˆœν•œ λ§›μ΄λž„κΉŒ??..

νŠΉμ • μ–Έμ–΄μ—λ§Œ λ§€λͺ°λ˜μ§€ μ•Šκ³  λ‹€μ–‘ν•œ μ–Έμ–΄(특히 μžλ°”μŠ€ν¬λ¦½νŠΈ μ§„μ˜)λ“€μ˜ 경우의 사둀가 λ§Žμ•„μ„œ λ„ˆλ¬΄ μ’‹μ•˜λ‹€. λ‹€μ‹œ μ‹œκ°„μ„ λ˜λŒλ¦°λ‹€λ©΄ γ€ŒClean Code」 λ³΄λ‹€λŠ” ν•΄λ‹Ή 책을 λ¨Όμ € μ½μ—ˆμ„ 것 κ°™λ‹€.

λΆˆνŽΈν•˜μ§€ μ•Šκ³  μ‰½κ²Œ 읽을 수 μžˆλŠ” μ£Όλ‹ˆμ–΄ 개발자 필독..λ³΄λ‹€λŠ” ꢌμž₯λ„μ„œλ‘œ κΌ½κ³  μ‹Άλ‹€.



Previous
AWS Summit Seoul 2024
πŸ€”Retrospect
2024.05.17
Next
κ·œμΉ™ μ—†μŒ
πŸ“–Book
2024.06.13