• Chap 4.3 ~ 4.6 [ πŸ—“Β **TIL λ‚ μ§œ ]** 2023.2.15
    • [ 였늘 읽은 λ²”μœ„ ]

      4.3 ~ 4.6

      [πŸ“Β μ˜€λŠ˜ TIL μš”μ•½ ]

    • λͺ…μ‹œμ /μ•”μ‹œμ  였λ₯˜μ²˜λ¦¬ 기법 쀑 μ–΄λŠ 것을 μ‚¬μš©ν•  μ§€μ—λŠ” νŒ€μ— 따라 λ‹¬λ €μžˆλ‹€.

    • 컴파일러의 κ²½κ³ λ₯Ό λ¬΄μ‹œν•˜μ§€ 말라.

    • 볡ꡬ할 수 μ—†λŠ” 였λ₯˜μΌ κ²½μš°λŠ” μ•”μ‹œμ  였λ₯˜ 전달 기법을 μ‚¬μš©ν•΄μ•Ό ν•œλ‹€. λ³΅κ΅¬ν•˜κΈ°λ₯Ό 원할 μˆ˜λ„ μžˆλŠ” 였λ₯˜λŠ” λͺ…μ‹œμ  방식을 μ‚¬μš©ν•˜μž.


      [ μ±…μ—μ„œ κΈ°μ–΅ν•˜κ³  싢은 λ‚΄μš©μ„ μ¨λ³΄μ„Έμš” ]

    • 였λ₯˜μ—λŠ”, μ‹œμŠ€ν…œμ΄ 볡ꡬ할 수 μžˆλŠ” 였λ₯˜ / μ—†λŠ” 였λ₯˜κ°€ μžˆλ‹€.

    • 비검사 μ˜ˆμ™Έ(μš”λž€ x 쑰용히 μ˜ˆμ™Έμ²˜λ¦¬)λŠ” 볡ꡬ할 수 μ—†λŠ” 였λ₯˜μΌ 경우 ꢌμž₯λ˜μ§€λ§Œ. λ¬Έμ„œν™”κ°€ 잘 λ˜μ–΄μ•Ό ν•˜κ³  였λ₯˜ μ²˜λ¦¬μ— λŒ€ν•œ 단일 계측을 κ°–κΈ°κ°€ μ–΄λ ΅λ‹€. λ§Žμ€ κ°œλ°œμžλŠ” λŒ€λΆ€λΆ„μ˜ 였λ₯˜ μ²˜λ¦¬κ°€ μ½”λ“œμ˜ μƒμœ„κ³„μΈ΅μ—μ„œ μ΄λ£¨μ–΄μ§ˆ 수 있기 λ•Œλ¬Έμ— μ€‘κ°„κ³„μΈ΅μ˜ μ½”λ“œλŠ” 였λ₯˜ 처리λ₯Ό ν•  ν•„μš”κ°€ μ—†λ‹€κ³  ν•œλ‹€. μ΄λ ‡κ²Œ μ„žμΈ μ˜ˆμ™Έμ²˜λ¦¬λŠ” λ‘λ”μ§€μž‘κΈ°λ‘œ 이어진닀.

    • κ²€μ‚¬μ˜ˆμ™ΈλŠ” μš”λž€ν•œ 였λ₯˜ 처리둜, ν˜ΈμΆœν•˜λŠ” μͺ½μ—μ„œ 볡ꡬ할 수 있길 λ°”λž„ λ•Œ μ‚¬μš©ν•œλ‹€. ex) ν”„λ‘œκ·Έλž˜λ° 였λ₯˜

    • λͺ…μ‹œμ  방법
      μ½”λ“œλ₯Ό ν˜ΈμΆœν•œ μͺ½μ—μ„œ 였λ₯˜κ°€ λ°œμƒν•  수 μžˆμŒμ„ 인지할 μˆ˜λ°–μ— 없도둝 ν•˜κ³ , 이λ₯Ό μ–΄λ–»κ²Œ μ²˜λ¦¬ν•˜λŠ” μ§€λŠ” 호좜자 μͺ½μ— λ‹¬λ €μžˆλ‹€.

    • μ•”μ‹œμ  방법
      였λ₯˜λ₯Ό μ•Œλ¦¬μ§€λ§Œ 였λ₯˜λ₯Ό μ‹ κ²½ μ“°μ§€ μ•Šμ•„λ„ λœλ‹€. 였λ₯˜κ°€ λ°œμƒν•  수 μžˆμŒμ„ μ•ŒκΈ° μœ„ν•΄μ„  λ¬Έμ„œλ‚˜ μ½”λ“œλ₯Ό μ½λŠ” λ“±μ˜ 적극적인 λ…Έλ ₯ ν•„μš”.


      [ 였늘 읽은 μ†Œκ°μ€? λ– μ˜€λ₯΄λŠ” 생각을 κ°€λ³κ²Œ μ μ–΄λ³΄μ„Έμš” ]

    • μžλ°” μ–Έμ–΄κ°€ 점점 많이, κΉŠμˆ™νžˆ λ‚˜μ˜€κ³  μžˆμ–΄μ„œ, 주말에 μžλ°” 곡뢀λ₯Ό ν•˜κ³  λ‹€μ‹œ μ‚΄νŽ΄λ΄μ•Ό ν•  것 같닀…

    • final / Result / setOutput 에 λŒ€ν•΄ μ•Œμ•„λ³΄κΈ°

  • Chap 4.1 ~ 4.2 [ πŸ—“Β **TIL λ‚ μ§œ ]** 2023.2.15
    • [ 였늘 읽은 λ²”μœ„ ]

      **4.1 볡ꡬ κ°€λŠ₯μ„±**
      
      - 4.1.1 볡ꡬ κ°€λŠ₯ν•œ 였λ₯˜
      - 2.1.2 볡ꡬ할 수 μ—†λŠ” 였λ₯˜
      - 4.1.3 ν˜ΈμΆœν•˜λŠ” μͺ½μ—μ„œλ§Œ 였λ₯˜ 볡ꡬ κ°€λŠ₯ μ—¬λΆ€λ₯Ό μ•Œ λ•Œκ°€ λ§Žλ‹€.
      - 4.1.4 ν˜ΈμΆœν•˜λŠ” μͺ½μ—μ„œ λ³΅κ΅¬ν•˜κ³ μž ν•˜λŠ” 였λ₯˜μ— λŒ€ν•΄ μΈμ§€ν•˜λ„λ‘ 해라
      
      **4.2 견고성 vs μ‹€νŒ¨**
      
      - 4.2.1 μ‹ μ†ν•˜κ²Œ μ‹€νŒ¨ν•΄λΌ
      - 4.2.2 μš”λž€ν•˜κ²Œ μ‹€νŒ¨ν•΄λΌ
      - 4.2.3 볡ꡬ κ°€λŠ₯μ„±μ˜ λ²”μœ„
      - 4.2.4 였λ₯˜λ₯Ό μˆ¨κΈ°μ§€ μ•ŠμŒ

      [πŸ“Β μ˜€λŠ˜ TIL μš”μ•½ ]

    • 였λ₯˜λŠ” λΆˆκ°€ν”Ό ν•œ κ²ƒμœΌλ‘œ 이λ₯Ό μˆ¨κΈ°κΈ°λ³΄λ‹€ 적극적으둜 μ•Œλ € 였λ₯˜ λ²”μœ„λ₯Ό μ•Œλ € ν˜ΈμΆœν•˜λŠ” μͺ½μ—μ„œ 이λ₯Ό λͺ…ν™•νžˆ 인지할 수 μžˆλ„λ‘ ν•΄μ•Ό ν•œλ‹€.

    • μ–΄λ– ν•œ 가정이 μŠ€μŠ€λ‘œμ—κ²ŒλŠ” λͺ…λ°±ν•΄ 보일 수 μžˆμ–΄λ„ λ‹€λ₯Έ μ‚¬λžŒμ—κ²ŒλŠ” κ·Έλ ‡μ§€ μ•Šμ„ 수 μžˆλ‹€λ₯Έ 점을 이해해야 ν•œλ‹€.

    • μ‹ μ†ν•˜κ²Œ μ‹€νŒ¨ν•˜μ—¬ 였λ₯˜μ˜ μœ„μΉ˜λ₯Ό λΉ λ₯΄κ²Œ 확인할 수 μžˆλ„λ‘ 해라

    • μ˜ˆμ™Έ 처리(ex ν”„λ‘œκ·Έλž˜λ° 쀑단)을 톡해 였λ₯˜λ₯Ό μš”λž€ν•˜κ²Œ μ•Œλ €λΌ.

    • 였λ₯˜λ₯Ό 숨기면 κ°œλ°œνŒ€μ΄ 문제λ₯Ό 인식할 수 μ—†λ‹€. λ””ν΄νŠΈ κ°’, 빈 κ°’, 아무것도 ν•˜μ§€ μ•ŠλŠ” λ°˜ν™˜ μ²˜λ¦¬μ— λŒ€ν•΄ 쑰심해야 ν•œλ‹€.


      [ μ±…μ—μ„œ κΈ°μ–΅ν•˜κ³  싢은 λ‚΄μš©μ„ μ¨λ³΄μ„Έμš” ]

    • java둜 μ„€λͺ…이 λ˜μ–΄μžˆμ–΄μ„œ μ˜ˆμ‹œλ₯Ό μ΄ν•΄ν•˜λŠ” 것에 어렀움을 κ²ͺμ—ˆλŠ”λ°, μ•„λž˜ λΈ”λ‘œκ·Έ 글이 chap 4μ—μ„œ μ „λ‹¬ν•˜κ³ μž ν•˜λŠ” 바와 λΉ„μŠ·ν•˜μ—¬ 도움이 λ˜μ—ˆλ‹€.
      https://velog.io/@design0728/clean-code-typescript-μ—λŸ¬μ²˜λ¦¬Error-Handling

      검사 μ˜ˆμ™Έ

      책이 μ§μ—­μ²΄λ‘œ λ˜μ–΄μžˆλŠ” λ‚΄μš©μ΄ λ§Žμ€λ°, 이 쀑 검사 μ˜ˆμ™ΈλΌλŠ” ν‘œν˜„μ΄ μ΄ν•΄ν•˜κΈ° μ–΄λ ΅λ‹€.
      μ΄λŠ” κ²°κ΅­ throw Error 와 같은 처리둜 μ–΄λ– ν•œ 쑰건을 검사할 경우 κ°•μ œλ‘œ μ˜ˆμ™Έ μ²˜λ¦¬κ°€ λ˜λ„λ‘ ν•˜λŠ” 것이닀.

      //μ•„λž˜μ™€ 같은 μΆ”μƒν™”λœ ν•¨μˆ˜κ°€ 있고
      
      const someFunction = () : string | Error =>{
      	if(false){
      		throw new Error
      	}else{
      		return '정상 κ°’'
      	}
      }
      
      // λˆ„κ΅°κ°€ ν˜ΈμΆœν•  경우 ν•˜λ‹¨μ²˜λŸΌ 였λ₯˜λ₯Ό λͺ…ν™•νžˆ 인지할 수 μžˆλ‹€.
      try(){
      	someFunction()
      }catch(e){
      	console.log(e)
      }
      

      [ 였늘 읽은 μ†Œκ°μ€? λ– μ˜€λ₯΄λŠ” 생각을 κ°€λ³κ²Œ μ μ–΄λ³΄μ„Έμš” ]

    • κ·Έλ™μ•ˆ 였λ₯˜λ₯Ό 잘 μ²˜λ¦¬ν•˜λŠ” κ²ƒμ—λ§Œ μ§‘μ€‘ν•˜κ³ , μ–΄λ–»κ²Œ 였λ₯˜λ₯Ό μ•Œλ¦΄ 것 인지에 λŒ€ν•œ 고민을 깊게 ν•΄λ³Έ 적이 μ—†μ–΄μ„œ λ§Žμ€ 자극이 λ˜μ—ˆλ‹€.

    • 이 μ½”λ“œκ°€ λ‚˜μ—κ²ŒλŠ” λͺ…ν™•ν•΄ 보여도 λˆ„κ΅°κ°€μ—κ² κ·Έλ ‡μ§€ μ•Šλ‹€λŠ” 것을 늘 μΈμ§€ν•˜κ³  μžˆμ–΄μ•Ό ν•œλ‹€. νŒ€ λ‚΄μ—μ„œ μ½”λ“œλ‘œ μ†Œν†΅ν•˜λŠ” 법을 계속 κ³ λ―Όν•΄μ•Ό ν•œλ‹€.

profile
λ‚˜ μ˜ˆμΈμ“°, 응애인디

0개의 λŒ“κΈ€