Dhey 2022. 1. 24. 13:38
๋ฐ˜์‘ํ˜•

Comment ๋ž€?

 

Code์— ๋Œ€ํ•œ ์‚ฌ๋žŒ์ด ์ฝ์„ ์ˆ˜ ์žˆ๋Š” ๋ถ€๊ฐ€ ์„ค๋ช….

์‚ฌ๋žŒ์ด Code๋ฅผ ๋” ์‰ฝ๊ฒŒ ์ดํ•ดํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•˜๋Š” ๊ฒƒ์ด ๋ชฉ์ ์ด๋‹ค.

 

 

โ–ถ Clean Commet ์›์น™
  1. Comment๋Š” ํ•„์š”์•…์ด๋‹ค
  2. Comment๋Š” ๋Œ€๋ถ€๋ถ„์˜ ์ƒํ™ฉ์—์„œ ์‚ฌ์šฉํ•˜์ง€ ๋ง์•„์•ผ ํ•œ๋‹ค.
     (๊ทธ๋Ÿฌ๋‚˜ Comment๋ฅผ ์‚ฌ์šฉํ•ด์•ผ ํ•˜๋Š” ๋ช‡ ๊ฐ€์ง€ ์˜ˆ์™ธ ์ƒํ™ฉ์ด ์žˆ๋‹ค)

 

 

* ์™œ ์ตœ๋Œ€ํ•œ ์ฝ”๋ฉ˜ํŠธ๋ฅผ ํ”ผํ•ด์•ผํ• ๊นŒ?

 

 >> Comment ๋ณด๋‹ค Code ๊ทธ ์ž์ฒด๊ฐ€ ์˜๋ฏธ ์žˆ์–ด์•ผ ํ•œ๋‹ค.

   - Comment๋กœ ๋ถ€๊ฐ€ ์„ค๋ช…์ด ํ•„์š”ํ•˜๋‹ค๋ฉด Code๊ฐ€ ์ถฉ๋ถ„ํžˆ ์˜๋ฏธ ์žˆ์ง€ ๋ชปํ•˜๋‹ค๋Š” ๊ฒƒ์ด๋‹ค.

   - Comment์— ์˜์ง€ํ•˜๊ธฐ ๋ณด๋‹ค ์˜๋ฏธ์žˆ๋Š” Code๋ฅผ ์ž‘์„ฑํ•˜๋Š” ๋…ธ๋ ฅ์ด ํ•„์š”ํ•˜๋‹ค

 

 >> Comment๋Š” ์ตœ์‹  ์ •๋ณด๋ฅผ ๋‹ด์ง€ ๋ชปํ•œ๋‹ค.

   - Code๋ฅผ ๋ณ€๊ฒฝํ•œ๋‹ค๊ณ  Comment ๋ณ€๊ฒฝ๋„ ํ•„์ˆ˜๊ฐ€ ์•„๋‹ˆ๊ธฐ ๋•Œ๋ฌธ์— ํ•ญ์ƒ ์ตœ์‹  ์ •๋ณด๋กœ ์ˆ˜์ •ํ•˜์ง€ ์•Š๋Š”๋‹ค. ๋”ฐ๋ผ์„œ Comment์˜ ์ •๋ณด๋Š” ์ž˜๋ชป ๋œ, ์˜ค๋ž˜ ๋œ ์ •๋ณด๋ฅผ ๋‹ด๊ณ  ์žˆ์„ ๊ฐ€๋Šฅ์„ฑ์ด ๋†’๋‹ค.

 

 >> Comment๋Š” ๋ถˆํ•„์š”ํ•˜๊ณ  ์ค‘๋ณต๋œ ์ •๋ณด๋ฅผ ํฌํ•จํ•˜๊ณ  ์žˆ์„ ์ˆ˜ ์žˆ๋‹ค.

   - Code๋กœ ์˜๋ฏธ๋ฅผ ์ถฉ๋ถ„ํžˆ ํ‘œํ˜„ํ•˜๊ณ  ์žˆ๋Š” ๊ฒฝ์šฐ, Comment์˜ ์ค‘๋ณต์ ์ธ ์ •๋ณด๋Š” ํ•„์š”์—†๊ฒŒ ๋œ๋‹ค.

   - ์ฝ”๋“œ์˜ ์ˆ˜์ • ์ด๋ ฅ์„ ํ‘œํ˜„ํ•˜๋Š” Comment๋Š” ํ˜•์ƒ ๊ด€๋ฆฌ ๋„๊ตฌ๋กœ ์ถฉ๋ถ„ํžˆ ์ •๋ณด๋ฅผ ๋‹ด์„ ์ˆ˜ ์žˆ๋‹ค

 

 

Bad Comment์˜ ์œ ํ˜•

 

1. ์˜๋ฏธ๊ฐ€ ๋ชจํ˜ธํ•œ ์ฝ”๋“œ๋ฅผ ์„ค๋ช…ํ•˜๋Š” Comment

   : Code ์ž์ฒด๋กœ ์ถฉ๋ถ„ํžˆ ๋ช…ํ™•ํ•œ ํ‘œํ˜„์ด ์•ˆ๋  ๋•Œ ์‚ฌ์šฉํ•œ๋‹ค.

    → ๊ฐ€๋…์„ฑ ํ–ฅ์ƒ์„ ๋ชฉ์ ์œผ๋กœ Comment๋ฅผ ์ž‘์„ฑํ•˜๋‚˜ ์ด๋Ÿด๋•Œ๋Š” Code ์ž์ฒด๋ฅผ ๊ฐœ์„ ํ•ด์•ผ ํ•œ๋‹ค.

 

2. ์ค‘๋ณต๋œ ์ •๋ณด๋ฅผ ๋‚˜ํƒ€๋‚ด๊ฑฐ๋‚˜ ์˜๋ฌด์ ์œผ๋กœ ์ž‘์„ฑํ•˜๋Š” Comment

   : ์˜๋ฏธ๊ฐ€ ๋ถ„๋ช…ํ•œ Code์— Comment๋กœ ์ค‘๋ณต ์„ค๋ช…์„ ํ•œ๋‹ค.

    → Code ๋ณ€๊ฒฝ ์‹œ Comment๋Š” ๋ณ€๊ฒฝ๋˜์ง€ ์•Š์„ ๊ฐ€๋Šฅ์„ฑ๋„ ์กด์žฌํ•œ๋‹ค. ๋”ฐ๋ผ์„œ ์ด๋Ÿด๋•Œ๋Š” ์ค‘๋ณต์„ ์ œ๊ฑฐํ•ด์•ผ ํ•œ๋‹ค.

Comment๊ฐ€ ์—†์–ด๋„ Code๋Š” ์ž์‹ ์˜ ์—ญํ• ์„ ํ•˜๊ณ ์žˆ์œผ๋ฏ€๋กœ Comment์˜ ์กด์žฌ์ด์œ ๊ฐ€ ์—†์Œ

 

3. Comment ์ฒ˜๋ฆฌ ๋œ Code

   : ๋‹น์žฅ ํ•„์š”๋Š” ์—†์ง€๋งŒ ์—†์• ๊ธฐ๋Š” ์•„๊นŒ์šด Code๋“ค

    → ์ด๋Š” Git๊ณผ ๊ฐ™์€ ํ˜•์ƒ ๊ด€๋ฆฌ ๋„๊ตฌ๋กœ ์–ผ๋งˆ๋“ ์ง€ ๊ด€๋ฆฌ๊ฐ€ ๊ฐ€๋Šฅํ•˜๋‹ค. ๋”ฐ๋ผ์„œ Comment ์ฒ˜๋ฆฌ ๋œ Code๋Š” ๋ฌด์กฐ๊ฑด ์‚ญ์ œํ•œ๋‹ค.

 

4. ์ด๋ ฅ์„ ๋‚จ๊ฒจ๋†“์€ Comment

   : ํŠน์ • File์ด๋‚˜ Class, Method์— ์ˆ˜์ • ์ด๋ ฅ์„ ๋‚จ๊ฒจ ๋†“์€ ๊ฒƒ

    → ์ด๋Ÿฐ ๊ฒƒ๋„ Git๊ณผ ๊ฐ™์€ ํ˜•์ƒ ๊ด€๋ฆฌ ๋„๊ตฌ๋กœ ๋ชจ๋“  ์ด๋ ฅ์ด ๊ด€๋ฆฌ๋œ๋‹ค. ๋”ฐ๋ผ์„œ ๋ชจ๋“  ์ด๋ ฅ Comment๋Š” ๋ฌด์กฐ๊ฑด ์‚ญ์ œํ•œ๋‹ค.

 

 

 

๋”ฐ๋ผ์„œ Clean Comment ๋ž€, "Comment๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š” ๊ฒƒ"์ด๋‹ค.

 

๊ทธ๋Ÿฌ๋‚˜ ๊ฒฝ์šฐ์— ๋”ฐ๋ผ ์ฝ”๋ฉ˜ํŠธ๊ฐ€ ํ•„์š”ํ•œ ์˜ˆ์™ธ ์ƒํ™ฉ์ด ์žˆ๋‹ค. ์ด๋Ÿด๋•Œ๋Š” ์ ์ ˆํ•œ Comment ์‚ฌ์šฉ์ด ํ•„์š”ํ•˜๋‹ค.

 

  1. ์ €์ž‘๊ถŒ ๋“ฑ์„ ๋ช…์‹œํ•˜๋Š” Comment

    →  ํšŒ์‚ฌ ์ •์ฑ…์— ์˜ํ•ด ์†Œ์œ ๊ถŒ, ์ €์ž‘๊ถŒ ๋“ฑ์„ ํ‘œ์‹œํ•ด์•ผ ํ•˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ์žˆ๋‹ค. ์ด๋Ÿด๋•Œ๋Š” ๋ชจ๋“  ์†Œ์ŠคํŒŒ์ผ์— ์ €์ž‘๊ถŒ ํ‘œ์‹œ Comment๊ฐ€ ํ•„์š”ํ•˜๋‹ค.

 

  2. ๋‹ค์ˆ˜๊ฐ€ ์‚ฌ์šฉํ•˜๋Š” Open API์˜ ๋ฌธ์„œํ™”

    → ์˜คํ”ˆ์†Œ์Šค ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋Š” API ์‚ฌ์šฉ์˜ ์šฉ์ด์„ฑ์„ ๋†’์ด๊ธฐ ์šฐํžˆใ… Java Doc๊ณผ ๊ฐ™์€ Comment๊ฐ€ ํ•„์š”ํ•˜๋‹ค.

 

  3. ์ด๋ฆ„๋งŒ์œผ๋กœ ์ถฉ๋ถ„ํžˆ ์˜๋ฏธ๋ฅผ ์ „๋‹ฌํ•˜๊ธฐ ์–ด๋ ค์šด ๊ฒฝ์šฐ

    → ๋ถˆ๊ฐ€ํ”ผํ•˜๊ฒŒ ์ด๋ฆ„๋งŒ์œผ๋กœ ์ถฉ๋ถ„ํ•œ ์˜๋ฏธ/์˜๋„๋ฅผ ํ‘œํ˜„ํ•˜์ง€ ๋ชปํ•˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ์žˆ๋‹ค. 

        ๋Œ€ํ‘œ์ ์ธ ์‚ฌ๋ก€๋กœ ๋ณต์žกํ•œ ์ •๊ทœํ‘œํ˜„์‹์˜ ์˜๋„ ํ‘œํ˜„์ด ์žˆ๋‹ค.

 

  4. TO DO Comment

    → TO DO Comment๋กœ ์•ž์œผ๋กœ ํ•ด์•ผ ํ•  ์ž‘์—…์„ ๊ฐ„๋žตํžˆ ํ‘œ์‹œ๋Š” ๊ฐ€๋Šฅํ•˜๋‹ค.

TO DO Comment๋ฅผ ์ธ์‹ํ•ด์„œ ์žŠ์„ ๊ฐ€๋Šฅ์„ฑ์ด ์ ๋‹ค

 

 


 

Code Formatting

์ฝ”๋“œ์˜ ๊ฐ€๋…์„ฑ๊ณผ ์ดํ•ด๋„๋ฅผ ๋†’์—ฌ์ฃผ๋Š” ์ผ๋ จ์˜ ์ž‘์—…

 

Code Formatting์€ ์ˆ˜์ง์  Formatting ์›์น™๊ณผ ์ˆ˜ํ‰์  Formatting ์›์น™์œผ๋กœ ๋ถ„๋ฅ˜๋œ๋‹ค.

 

 

Formatting์€ ์ค‘์š”ํ•˜๋‹ค. Formatting์ด ๋™์ž‘์— ์˜ํ–ฅ์„ ๋ฏธ์น˜์ง€ ์•Š๋Š”๋‹ค๊ณ  ํ•ด์„œ ๋ฌด์‹œํ•ด์„œ๋Š” ์•ˆ๋œ๋‹ค.

๋Œ€๋ถ€๋ถ„ ์–ธ์–ด ๋ณ„ Style Guide์—๋Š” Formatting์ด ๋ฐ˜๋“œ์‹œ ํฌํ•จ๋˜์–ด ์žˆ์„๋งŒํผ, ๊ฐ€๋…์„ฑ๊ณผ Foramatting์€ ๋ฐ€์ ‘ํ•œ ๊ด€๋ จ์ด ์žˆ๋‹ค.

Formatting๋งŒ ๋ณ€๊ฒฝ๋˜์–ด๋„ ์ฝ”๋“œ์˜ ๊ฐ€๋…์„ฑ์€ ํ–ฅ์ƒ๋œ๋‹ค.

๊ด€๋ จ๋˜์–ด์žˆ๋Š” ์š”์†Œ๋ผ๋ฆฌ ๊ทธ๋ฃนํ™”๋งŒ ํ•˜๋”๋ผ๋„ ๊ฐ€๋…์„ฑ์€ ๊ธ‰๊ฒฉํžˆ ํ–ฅ์ƒ๋œ๋‹ค.

 

 


 

์ˆ˜์ง์  Formatting
์ฝ”๋“œ์˜ ์œ„ → ์•„๋ž˜๋กœ ์ง„ํ–‰๋œ ํ๋ฆ„๊ณผ ๊ด€๋ จ๋œ ์ฝ”๋“œ ์ž‘์„ฑ ๊ทœ์น™

 → ์ฝ”๋“œ ๋ผ์ธ ๊ฐ„์˜ ๊ฐ„๊ฒฉ, ๋ฐ€์ ‘ํ•œ ๊ด€๊ณ„๋ฅผ ๊ฐ€์ง€๋Š” ์ฝ”๋“œ ๊ฐ„์˜ ๊ทธ๋ฃนํ™” ๋“ฑ์ด ํฌํ•จ๋œ๋‹ค.

 

โ‰ซ ์ถ”์ƒํ™”์˜ ์ˆ˜์ค€ ์ˆœ์„œ๋กœ ์ฝ”๋“œ๋ฅผ ๋ฐฐ์น˜ํ•œ๋‹ค.

 

โ‰ซ ์„œ๋กœ ๋‹ค๋ฅธ ๊ฐœ๋…์€ ๋ถ„๋ฆฌํ•œ๋‹ค.

  → ๋นˆ ํ–‰์„ ์‚ฌ์šฉํ•˜์—ฌ ๊ธ€์˜ ๋ฌธ๋‹จ์„ ๋‚˜๋ˆ„๋“ฏ ์ฝ”๋“œ์˜ ๊ฐœ๋…์„ ๋ถ„๋ฆฌํ•œ๋‹ค.

 

โ‰ซ ์œ ์‚ฌํ•œ ๊ฐœ๋…์€ ๋ชจ์•„ ๋†“๋Š”๋‹ค.

  → ๊ฐœ๋…์ ์œผ๋กœ ์œ ์‚ฌํ•œ ๋‚ด์šฉ์€ ๋นˆ ํ–‰์„ ์‚ฌ์šฉํ•˜์ง€ ๋ง๊ณ  ๋ถ™์—ฌ์„œ ์ž‘์„ฑํ•œ๋‹ค.

 

โ‰ซ ๊ด€๊ณ„์žˆ๋Š” ๋‚ด์šฉ์€ ๊ฐ€๊นŒ์šด ํ–‰์— ์ž‘์„ฑํ•œ๋‹ค.

  → ์ฝ”๋“œ๋ฅผ ์ฝ๊ธฐ ์œ„ํ•ด ์—ฌ๋Ÿฌ๋ฒˆ์˜ Jump ํ•˜๋Š” ๊ฒƒ์„ ๋ฐฉ์ง€ํ•˜๋ ค๋ฉด ๊ด€๋ จ์žˆ๋Š” ๋ฉ”์†Œ๋“œ๋“ค์„ ๊ฐ€๊นŒ์ด ๋ฐฐ์น˜ํ•ด์•ผํ•œ๋‹ค.

  → Method๋ฅผ ์ถ”๊ฐ€ํ•  ๋•Œ๋Š” ์‹œ๊ฐ„์  ์ˆœ์„œ๊ฐ€ ์•„๋‹Œ ๋…ผ๋ฆฌ์ ์ธ ๊ด€๋ จ์„ฑ์— ๋”ฐ๋ผ ๋ฐฐ์น˜ํ•ด์•ผ ํ•œ๋‹ค.

 

 

 

์ˆ˜ํ‰์ (Horizontal) Formatting
์ฝ”๋“œ ํ•œ ์ค„์— ๋Œ€ํ•ด ์™ผ์ชฝ → ์˜ค๋ฅธ์ชฝ์œผ๋กœ ์ง„ํ–‰๋œ ํ๋ฆ„๊ณผ ๊ด€๋ จ๋œ ์ฝ”๋“œ ์ž‘์„ฑ ๊ทœ์น™

 → ๋“ค์—ฌ์“ฐ๊ธฐ, ์ฝ”๋“œ ๊ฐ„์˜ ๊ฐ„๊ฒฉ, ์ฝ”๋“œ ํ–‰์˜ ๋„“์ด ๋“ฑ์ด ํฌํ•จ๋œ๋‹ค.

 → ์ฝ”๋“œ ํ•œ ์ค„์„ ์Šคํฌ๋กค์˜ ์ด๋™์—†์ด ์ฝ”๋“œ๋ฅผ ์ฝ๋Š” ๊ฒƒ์„ ๋ชฉํ‘œ๋กœ ํ•œ๋‹ค.

 

โ‰ซ ๋“ค์—ฌ์“ฐ๊ธฐ๋ฅผ ์ ๊ทน์ ์œผ๋กœ ํ™œ์šฉํ•œ๋‹ค.

  → ๋“ค์—ฌ์“ฐ๊ธฐ๋Š” ๊ด€๋ จ์žˆ๋Š” ๊ฐœ๋…๋“ค์„ ๋…ผ๋ฆฌ์ ์ธ ๊ทธ๋ฃน์œผ๋กœ ๋ฌถ์–ด ๊ฐ€๋…์„ฑ์„ ํ–ฅ์ƒ ์‹œํ‚จ๋‹ค. (์ผ๋ถ€ ์–ธ์–ด๋Š” ๋“ค์—ฌ์“ฐ๊ธฐ๊ฐ€ ํ•„์ˆ˜์ ์ž„)

 

โ‰ซ ํ•œ ์ค„์˜ ๊ธด ์ฝ”๋“œ๋ฅผ ์—ฌ๋Ÿฌ ์ค„์˜ ์งง์€ ์ฝ”๋“œ๋กœ ๋ถ„๋ฆฌํ•œ๋‹ค.

  → ์ˆ˜ํ‰ ์Šคํฌ๋กค๋ง ์—†์ด ์ฝ”๋“œ๋ฅผ ์ฝ๊ณ  ์ดํ•ดํ•  ์ˆ˜ ์žˆ์–ด์•ผ ํ•œ๋‹ค.

 

โ‰ซ ์ˆ˜ํ‰ ์ •๋ ฌ์€ ์ค‘์š”ํ•˜์ง€ ์•Š๋‹ค.

  → ์ˆ˜ํ‰ ์ •๋ ฌ์€ ํ•ด๋„ ์ƒ๊ด€ ์—†์œผ๋‹ˆ ํ•„์š”ํ•˜์ง€๋Š” ์•Š๋‹ค. ์˜คํžˆ๋ ค ์ดํ›„ ์ˆ˜์ • ์‹œ ์ถ”๊ฐ€ ์ž‘์—…์„ ํ•„์š”๋กœํ•  ๊ฐ€๋Šฅ์„ฑ์ด ๋†’๋‹ค.

 

 


 

์ฝ”๋“œํ”„๋ ˆ์†Œ Java ์›น ๊ฐœ๋ฐœ ์ฒดํ—˜๋‹จ ํ™œ๋™ ์ค‘ 'SW ์œ ์ง€๋ณด์ˆ˜์„ฑ ํ–ฅ์ƒ์„ ์œ„ํ•œ Clean Code' ์ด๋Ÿฌ๋‹ ๊ฐ•์˜๋ฅผ ๋“ฃ๊ณ  ์ž‘์„ฑํ•˜์˜€์Šต๋‹ˆ๋‹ค :)
์ฝ”๋“œํ”„๋ ˆ์†Œ URL: https://www.codepresso.kr/

 

ํ”„๋ฆฌ๋ฏธ์—„ IT ๊ต์œก ์„œ๋น„์Šค - ์ฝ”๋“œํ”„๋ ˆ์†Œ

 

www.codepresso.kr

๋ฐ˜์‘ํ˜•