πŸ‘©πŸ»‍πŸ’» Dev

[Clean Code] 클린 μ½”λ“œ

jcowwk 2025. 1. 24. 22:24

클린 μ½”λ“œ


1. 클린 μ½”λ“œ


ν˜Όμžμ„œ κ°œλ°œν•  λ•ŒλŠ” λ‚˜λ§Œ μ•Œμ•„λ³΄λ©΄ λ˜λŠ”, λ‚˜λ§Œ μ•„λŠ” λ³€μˆ˜λͺ…을 μ‚¬μš©ν•΄μ™”μŠ΅λ‹ˆλ‹€. λ‹€λ₯Έ μ‚¬λžŒλ“€κ³Ό νŒ€ ν”„λ‘œμ νŠΈλ₯Ό ν•΄λ³΄λ©΄μ„œ 클린 μ½”λ“œμ˜ μ€‘μš”μ„±μ„ κΉ¨λ‹«κ²Œ λ˜μ—ˆμŠ΅λ‹ˆλ‹€. κ·Έλž˜μ„œ 클린 μ½”λ“œλž€ 무엇인가에 λŒ€ν•΄ μ•Œμ•„λ³΄κΈ° μ‹œμž‘ν–ˆκ³ , λ‹€μ–‘ν•œ 원칙듀이 μžˆλ‹€λŠ” 것을 μ•Œκ²Œ λ˜μ—ˆμŠ΅λ‹ˆλ‹€. κ·Έ μ€‘μ—μ„œ μ œκ°€ κ²ͺμ—ˆλ˜ 기본적인 μ›μΉ™μœΌλ‘œ ν¬μŠ€νŒ… ν•˜κ² μŠ΅λ‹ˆλ‹€.

 

1. 클린 μ½”λ“œ

μ–΄ν”Œλ¦¬μΌ€μ΄μ…˜μ„ κ°œλ°œν•  λ•Œ μ½”λ“œμ˜ 가독성, μœ μ§€λ³΄μˆ˜μ„±, ν™•μž₯성을 높이기 μœ„ν•΄ μž‘μ„±ν•˜λŠ” κΉ¨λ—ν•œ μ½”λ“œμž…λ‹ˆλ‹€.

 

- μ£Όμš” 원칙

1. λ³€μˆ˜λͺ…

λ³€μˆ˜λͺ…은 μ½”λ“œμ˜ 의미λ₯Ό λͺ…ν™•νžˆ 전달해야 ν•©λ‹ˆλ‹€.

ꡬ체적으둜 의미 μžˆλŠ” 이름을 μ‚¬μš©ν•˜μ—¬ λ³€μˆ˜μ˜ 역할을 μ‰½κ²Œ 이해할 수 μžˆμ–΄μ•Όν•©λ‹ˆλ‹€.

 

2. 주석

μ½”λ“œ μžμ²΄κ°€ 무엇을 ν•˜λŠ”μ§€ λͺ…ν™•ν•˜μ§€ μ•Šμ€ λΆ€λΆ„μ—λ§Œ μž‘μ„±ν•΄μ•Ό ν•©λ‹ˆλ‹€.

 

μ €λŠ” νŒ€μ›λ“€κ³Ό ν˜‘μ—…μ„ μœ„ν•΄ μ œκ°€ 무슨 μ½”λ“œλ₯Ό μž‘μ„±ν–ˆλŠ”μ§€ 일일히 주석을 μΆ”κ°€ν–ˆμ—ˆμŠ΅λ‹ˆλ‹€.

ν•˜μ§€λ§Œ 주석은 주둜 "μ™œ" μ΄λŸ¬ν•œ 방법을 μ„ νƒν–ˆλŠ”μ§€ μ„€λͺ…ν•˜κ±°λ‚˜ μ½”λ“œμ˜ μ˜λ„λ₯Ό νŒŒμ•…ν•˜κΈ° μ–΄λ €μšΈ λ•Œ μ‚¬μš©ν•˜λŠ” 것이 클린 μ½”λ“œμ˜ μ›μΉ™μž„μ„ μ•Œκ²Œ λ˜μ—ˆμŠ΅λ‹ˆλ‹€.

 

3. ν•¨μˆ˜λŠ” ν•˜λ‚˜μ˜ μ—­ν• 

ν•œ ν•¨μˆ˜κ°€ λ„ˆλ¬΄ λ§Žμ€ 일을 ν•˜κ²Œ 되면 μ΄ν•΄ν•˜κΈ° μ–΄λ ΅κ³  μœ μ§€λ³΄μˆ˜κ°€ μ–΄λ €μ›Œμ§‘λ‹ˆλ‹€.

ν•¨μˆ˜μ˜ 길이λ₯Ό μ λ‹Ήν•˜κ²Œ μœ μ§€ν•˜κ³ , 각 ν•¨μˆ˜κ°€ μ–΄λ–€ 일을 ν•˜λŠ”μ§€ λͺ…ν™•ν•˜κ²Œ μ •μ˜ν•©λ‹ˆλ‹€.

 

4. μ˜ˆμ™Έ 처리

μ˜ˆμ™Έ μ²˜λ¦¬ν•  λ•ŒλŠ” κ°€λŠ₯ν•œ ν•œ μ˜λ―ΈμžˆλŠ” μ—λŸ¬ λ©”μ‹œμ§€λ₯Ό μ œκ³΅ν•˜κ³ , 였λ₯˜λ₯Ό 적절히 λ‘œκΉ…ν•΄μ•Όν•©λ‹ˆλ‹€.

 

5. μ½”λ“œ 쀑볡 μ΅œμ†Œν™”

λ™μΌν•œ 둜직이 μ—¬λŸ¬ 곳에 반볡되면, μˆ˜μ •ν•  λ•Œ λͺ¨λ“  곳을 일일이 μˆ˜μ •ν•΄μ•Ό ν•˜λ―€λ‘œ μ‹€μˆ˜ν•  κ°€λŠ₯성도 μ»€μ§‘λ‹ˆλ‹€.

쀑볡을 ν”Όν•˜λ €λ©΄ ν•¨μˆ˜λ‚˜ 클래슀의 μž¬μ‚¬μš©μ„±μ„ 높이고 μ€‘λ³΅λœ μ½”λ“œλ₯Ό 곡톡 λͺ¨λ“ˆλ‘œ μΆ”μΆœν•˜λŠ” 것이 μ’‹μŠ΅λ‹ˆλ‹€.

 

6. κ°„κ²°ν•˜κ²Œ μž‘μ„±

μ½”λ“œκ°€ λ„ˆλ¬΄ λ³΅μž‘ν•˜λ©΄ μ΄ν•΄ν•˜κΈ° μ–΄λ €μ›Œμ§€κ³  μˆ˜μ •ν•˜κΈ°λ„ νž˜λ“­λ‹ˆλ‹€.

μ½”λ“œμ˜ 가독성을 높이기 μœ„ν•΄ λΆˆν•„μš”ν•œ μ‘°κ±΄λ¬Έμ΄λ‚˜ λ³΅μž‘ν•œ λ‘œμ§μ„ ν”Όν•˜λŠ” 것이 μ’‹μŠ΅λ‹ˆλ‹€.


μ°Έκ³  μ‚¬μ΄νŠΈ

 

ν΄λ¦°μ½”λ“œλž€ 무엇인가?

μ†”μ°ν•˜κ²Œ λˆ„κ΅¬λ“ μ§€ "ν΄λ¦°μ½”λ“œκ°€ 무엇이냐?"λ¬Όμ–΄λ³Έλ‹€λ©΄, λˆ„κ΅¬λ‚˜ "κΉ”λ”ν•˜κ²Œ λ‹€λ₯Έμ‚¬λžŒλ“€λ„ μ•Œμ•„λ³Ό 수 있고, μ½”λ“œλ₯Ό 처음 λ³΄λŠ” μ‚¬λžŒλ„ λ™μž‘μ„ μ§κ΄€μ μœΌλ‘œ νŒŒμ•…ν•  수 μžˆλ„λ‘ μž‘μ„±λœ μ½”λ“œ"라고 λ‹΅ν• 

velog.io

 

 

[κ°œλ°œμ„œμ ] 클린 μ½”λ“œ(Clean Code) 핡심 μš”μ•½ 및 정리

두 번째둜 ν΄λ¦°μ½”λ“œλ₯Ό μ½μœΌλ©΄μ„œ 처음 μ½μ—ˆμ„λ•Œμ™€ 느꼈던 점이 쑰금 달라진 것 κ°™μŠ΅λ‹ˆλ‹€. μ΄λ²ˆμ—λ„ μ—­μ‹œ μ œκ°€ μ œλŒ€λ‘œ μ μš©ν•˜μ§€ λͺ»ν–ˆλ˜ λΆ€λΆ„ ν˜Ήμ€ κ°œλ…μ μœΌλ‘œ λΆ€μ‘±ν–ˆλ˜ 뢀뢄을 μ •λ¦¬ν•˜κ³ , μ•žμœΌλ‘œ

mangkyu.tistory.com

 

λ¬Έμ œκ°€ 있으면 λŒ“κΈ€ λ‚¨κ²¨μ£Όμ„Έμš” !

ν”Όλ“œλ°±μ€ μ–Έμ œλ‚˜ ν™˜μ˜μž…λ‹ˆλ‹€ <3