Skip to main content

πŸ“’ μž‘μ„± μ˜ˆμ‹œ πŸ“’

1. πŸ“Œ 핡심 κ°œλ… 정리

βœ… μš”μ•½ν•˜κΈ°

  1. μ˜λ„λ₯Ό λΆ„λͺ…νžˆ λ°ν˜€λΌ
    쒋은 이름을 μ§€μœΌλ €λ©΄ μ‹œκ°„μ΄ κ±Έλ¦¬μ§€λ§Œ 쒋은 μ΄λ¦„μœΌλ‘œ μ ˆμ•½ν•˜λŠ” μ‹œκ°„μ΄ 훨씬 더 λ§Žλ‹€.

    • κ°œμ„  μ „
    int d; // κ²½κ³Ό μ‹œκ°„(λ‹¨μœ„: λ‚ μ§œ)
    

    μœ„μ˜ μ½”λ“œλŠ” 아무 μ˜λ―Έλ„ λ“œλŸ¬λ‚˜μ§€ μ•ŠλŠ”λ‹€. λ”°λΌμ„œ μΈ‘μ •κ°’κ³Ό λ‹¨μœ„λ₯Ό ν‘œν˜„ν•˜λŠ” 이름이 ν•„μš”ν•˜λ‹€.

    • κ°œμ„  ν›„
    int elapsedTimeInDays;
    int daysSinceCreation;
    int daysSinceModification
    int fileAgeInDays;
    

    μ˜λ„κ°€ λ“œλŸ¬λ‚˜λŠ” 이름을 μ‚¬μš©ν•΄ μ½”λ“œ 이해와 변경을 높일 수 μžˆμ—ˆλ‹€.


  1. ν•œ κ°œλ…μ— ν•œ λ‹¨μ–΄λ§Œ μ‚¬μš©ν•˜μž
    λ˜‘κ°™μ€ κΈ°λŠ₯의 λ©”μ„œλ“œλ₯Ό ν΄λž˜μŠ€λ§ˆλ‹€ fetch, retrieve, getκ³Ό 같이 제각각 λΆ€λ₯΄λ©΄ ν˜Όλž€μŠ€λŸ½λ‹€.

    • κ°œμ„  μ „
    class Naver {
      void fetchAPI();
    }
    
    class Kakao {
      void retrieveAPI();
    }
    
    class Toss {
      void getAPI();
    }
    

    μœ„μ˜ μ½”λ“œλŠ” 같은 역할을 ν•˜λŠ” λ©”μ„œλ“œ 이름을 ν΄λž˜μŠ€λ§ˆλ‹€ λ‹€λ₯΄κ²Œ 지어 μ–΄λŠ ν΄λž˜μŠ€μ—μ„œ μ–΄λŠ 이름을 μΌλŠ”μ§€ κΈ°μ–΅ν•˜κΈ° μ–΄λ ΅λ‹€.

    • κ°œμ„  ν›„ -
    class Naver {
      void fetchAPI();
    }
    
    class Kakao {
      void fetchAPI();
    }
    
    class Toss {
      void fetchAPI();
    }
    

    fetch에 λŒ€ν•œ κΈ°λŠ₯을 ν•˜λŠ” λ©”μ„œλ“œ 이름을 ν†΅μΌμ‹œμΌœ κΈ°μ–΅ν•˜κΈ° μ‰½κ²Œ λ³€κ²½ν–ˆλ‹€.


2. πŸ€” 이해가 μ–΄λ €μš΄ λΆ€λΆ„

πŸ” μ§ˆλ¬Έν•˜κΈ°

  1. μ˜λ„λ₯Ό λ“œλŸ¬λ‚΄λŠ” λ³€μˆ˜λͺ…
    • μ–΄λ €μ› λ˜ λΆ€λΆ„
      • λ³€μˆ˜λͺ…을 짧게 ν•˜λ©΄ κ°„κ²°ν•˜μ§€λ§Œ 의미 전달이 λΆ€μ‘±ν•˜κ³ , 길게 ν•˜λ©΄ 가독성이 λ–¨μ–΄μ§ˆ μˆ˜λ„ μžˆλ‹€.
      • μ±…μ—μ„œλŠ” "μ˜λ„λ₯Ό λ“œλŸ¬λ‚΄λΌ"라고 ν–ˆμ§€λ§Œ, μ–΄λ””κΉŒμ§€ 길게 써야 ν•˜λŠ”μ§€ 기쀀이 λͺ¨ν˜Έν•˜λ‹€.
    • κΆκΈˆν•œ 점
      • λ³€μˆ˜λͺ…이 λ„ˆλ¬΄ κΈΈμ–΄μ§€λŠ” 것을 λ°©μ§€ν•˜λ©΄μ„œλ„ 의미λ₯Ό λͺ…ν™•νžˆ ν•˜λŠ” 방법이 μžˆμ„κΉŒ?
      • μ‹€λ¬΄μ—μ„œ 일반적으둜 λ”°λ₯΄λŠ” λ³€μˆ˜λͺ… μž‘μ„± κ·œμΉ™μ΄ μžˆμ„κΉŒ?

  1. ν•¨μˆ˜(λ©”μ„œλ“œ) 뢄리 κΈ°μ€€
    • μ–΄λ €μ› λ˜ λΆ€λΆ„
      • "ν•¨μˆ˜λŠ” ν•œ 가지 일만 ν•΄μ•Ό ν•œλ‹€"λŠ” 원칙이 μžˆμ§€λ§Œ, μ–΄λ–€ κΈ°μ€€μœΌλ‘œ 뢄리해야 ν•˜λŠ”μ§€ μ• λ§€ν•˜λ‹€.
      • λ„ˆλ¬΄ 잘게 λ‚˜λˆ„λ©΄ 였히렀 μ½”λ“œκ°€ 더 λ³΅μž‘ν•΄μ§ˆ μˆ˜λ„ μžˆμ„ 것 κ°™λ‹€.
    • κΆκΈˆν•œ 점
      • 쒋은 ν•¨μˆ˜ 뢄리 기쀀을 μ •ν•˜λŠ” 방법이 μžˆμ„κΉŒ?
      • νŠΉμ • 길이(예: 10쀄 μ΄ν•˜) 같은 μ •λŸ‰μ μΈ 기쀀이 μ‘΄μž¬ν• κΉŒ?

  1. 주석 λŒ€μ‹  μ½”λ“œλ‘œ μ˜λ„λ₯Ό ν‘œν˜„ν•˜λŠ” 방법
    • μ–΄λ €μ› λ˜ λΆ€λΆ„
      • "주석을 쀄이고, μ½”λ“œ 자체둜 의미λ₯Ό ν‘œν˜„ν•˜λΌ"λŠ” 원칙을 κ°•μ‘°ν–ˆμ§€λ§Œ, λͺ¨λ“  κ²½μš°μ— μ μš©ν•˜κΈ° μ–΄λ €μ›Œ 보인닀.
      • μ˜ˆμ™Έ μ²˜λ¦¬λ‚˜ λ³΅μž‘ν•œ λ‘œμ§μ„ μ„€λͺ…ν•  λ•Œλ„ 주석 없이 이해할 수 μžˆλŠ” μ½”λ“œκ°€ κ°€λŠ₯ν• κΉŒ?
    • κΆκΈˆν•œ 점
      • 주석 없이도 μΆ©λΆ„νžˆ 이해할 수 μžˆλŠ” μ½”λ“œλ₯Ό μž‘μ„±ν•˜λŠ” μ‹€μ§ˆμ μΈ 방법이 μžˆμ„κΉŒ?
      • μ½”λ“œμ˜ 가독성을 μœ μ§€ν•˜λ©΄μ„œλ„ 주석을 μ΅œμ†Œν™”ν•  수 μžˆλŠ” 팁이 μžˆμ„κΉŒ?

3. πŸ“š μ°Έκ³  사항

πŸ“’ λ…Όμ˜ν•˜κΈ°

  1. κ΄€λ ¨ 자료 곡유

  1. λ…Όμ˜ν•˜κ³  싢은 주제
    • 주제
      λ©”μ„œλ“œλŠ” λͺ‡ μ€„κΉŒμ§€κ°€ μ λ‹Ήν• κΉŒ?
    • μ„€λͺ…
      • Clean Codeμ—μ„œλŠ” μ§§μ„μˆ˜λ‘ μ’‹λ‹€κ³  ν•˜μ§€λ§Œ λ„ˆλ¬΄ 잘게 μͺΌκ°œλ©΄ 였히렀 가독성이 λ–¨μ–΄μ§ˆ μˆ˜λ„ μžˆλ‹€.
      • μ‹€λ¬΄μ—μ„œλŠ” μ–΄λŠ 정도가 μ μ ˆν•œ 기쀀인지 λ…Όμ˜ν•΄ 보면 쒋을 것 κ°™λ‹€.