๊ฐœ๋ฐœ์ž์—๊ฒŒ ํด๋ฆฐ์ฝ”๋“œ๊ฐ€ ์ค‘์š”ํ•œ ์ด์œ 

    ํด๋ฆฐ ์ฝ”๋“œ(Clean Code)

    ์†Œํ”„ํŠธ์›จ์–ด ๊ฐœ๋ฐœ์—์„œ ์‚ฌ์šฉ๋˜๋Š” ๊ฐœ๋…์œผ๋กœ, ๋ง ๊ทธ๋Œ€๋กœ ์ฝ๊ธฐ ์‰ฝ๊ณ  ์ดํ•ดํ•˜๊ธฐ ์‰ฌ์šด ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•˜๋Š” ๊ฒƒ์ด๋‹ค.

    ํ”„๋กœ๊ทธ๋žจ์˜ ๋™์ž‘์„ ๋ณด์žฅํ•˜๋Š” ๊ฒƒ ๋ฟ ์•„๋‹ˆ๋ผ ์ฝ”๋“œ ์ž์ฒด๊ฐ€ ๊ฐ€๋…์„ฑ์ด ๋›ฐ์–ด๋‚˜๊ณ  ์œ ์ง€๋ณด์ˆ˜๊ฐ€ ์‰ฝ๋„๋ก ์ž‘์„ฑ๋˜์–ด์•ผ ํ•œ๋‹ค๋Š” ๊ฒƒ์ด๋‹ค.

     


    ํด๋ฆฐ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•˜์ง€ ์•Š๊ฒŒ ๋˜๋ฉด 

    1. ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•˜๊ธฐ ์‰ฝ๊ณ 

    2. ์˜ค๋ฅ˜๋ฅผ ๋ฐœ๊ฒฌํ•œ ํ›„์—๋„ ์ˆ˜์ •์ด ์–ด๋ ต๋‹ค 

    3. ๊ฐœ๋ฐœ ์†๋„๋ฅผ ๋Šฆ์ถ˜๋‹ค 

     

    ๋”ฐ๋ผ์„œ ๋‹น์—ฐํ•˜๊ฒŒ๋„, ํŒ€ ์ „์ฒด์™€ ํ”„๋กœ์ ํŠธ๋ฅผ ์œ„ํ•ด์„œ๋Š” ๊ฐ€์žฅ ์ค‘์š”ํ•œ ๊ฐ€์น˜๋ผ๊ณ  ํ•  ์ˆ˜ ์žˆ๋‹ค. 


    ํด๋ฆฐ์ฝ”๋“œ์˜ ์ฃผ์š” ์›์น™

    1. ์˜๋ฏธ ์žˆ๋Š” ๋ณ€์ˆ˜์™€ ํ•จ์ˆ˜ ์‚ฌ์šฉํ•˜๊ธฐ 

    ์ฝ”๋“œ๊ฐ€ ๊ธธ์–ด์ง€๊ณ  ์ ์  ๋งŽ์•„์ง€๊ฒŒ ๋˜๋ฉด ๋ณ€์ˆ˜์™€ ํ•จ์ˆ˜์˜ ์ด๋ฆ„์ด ์ˆ˜๋„ ์—†์ด ๋งŽ๋‹ค.

    ์ด๋•Œ, ์ด ํ•จ์ˆ˜์™€ ๋ณ€์ˆ˜๋Š” ์‚ฌ์šฉ ๋ฌธ๋งฅ์— ๋งž๊ฒŒ ์ •ํ™•ํ•˜๊ฒŒ ๋ช…๋ช…๋˜์–ด์•ผ ํ•œ๋‹ค.

     

    2. ๊ฐ€๋…์„ฑ ์กฐ์€ ์ฝ”๋“œ ๋งŒ๋“ค๊ธฐ 

    ์ฝ”๋“œ๋Š” ๋‚˜ ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ๋‹ค๋ฅธ ์‚ฌ๋žŒ์ด ๋ด๋„ ์ฝ๊ธฐ ์‰ฝ๋„๋ก ์ž‘์„ฑ๋˜์–ด์•ผ ํ•œ๋‹ค.

     

    3. ์ฃผ์„์„ ํ•„์š”ํ•  ๋•Œ๋งŒ ์ž˜ ํ™œ์šฉํ•˜๊ธฐ

    ์ฃผ์„์„ ์ž˜ ํ™œ์šฉํ•˜๋Š” ๊ฒƒ์€ ๋งค์šฐ ์ค‘์š”ํ•˜๋‹ค.

    ์ฃผ์„์ด ๋„ˆ๋ฌด ๋งŽ์•„๋„, ๋„ˆ๋ฌด ์ ์–ด๋„ ์•ˆ์ข‹๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค. 

    ์ฃผ์„์„ ์ž˜ ํ™œ์šฉํ•˜์—ฌ ์ „์ฒด ์ฝ”๋“œ์˜ ์˜๋„๋‚˜ ์ค‘์š”ํ•œ ๋ถ€๋ถ„์— ์ ์ ˆํ•˜๊ฒŒ ์‚ฌ์šฉํ•˜์—ฌ ๋‹ค๋ฅธ ๊ฐœ๋ฐœ์ž ๋ฟ ์•„๋‹ˆ๋ผ ๋‚˜์ค‘์— ์ฝ”๋“œ๋ฅผ ์ดํ•ดํ•  ์ž์‹ ์—๊ฒŒ๋„ 

    ์ฝ”๋“œ๋ฅผ ์ดํ•ดํ•˜๋Š”๋ฐ ๋„์›€์„ ์ค€๋‹ค.

     

    4. ๊ฐ„๊ฒฐํ•œ ์ฝ”๋“œ ์œ ์ง€ํ•˜๊ธฐ

    ์ตœ๋Œ€ํ•œ ์ค„์ผ ์ˆ˜ ์žˆ๋Š” ์ฝ”๋“œ๋ฅผ ์ค„์ด๋ฉด์„œ ๊ฐ„๊ฒฐํ•œ ์ฝ”๋“œ๋ฅผ ์œ ์ง€ํ•ด์•ผ ํ•œ๋‹ค.

    ๋ฒ„๊ทธ๋ฅผ ์ค„์ด๊ณ , ์œ ์ง€๋ณด์ˆ˜๋ฅผ ์šฉ์ดํ•˜๊ฒŒ ํ•˜๋Š” ๊ฐ€์žฅ ์ข‹์€ ๋ฐฉ๋ฒ•์ด๋‹ค.

     

    5. ๋ชจ๋“ˆํ™” ์ˆ˜ํ–‰ํ•˜๊ธฐ

    ์ž‘์€ ๋ชจ๋“ˆ๋กœ ์ฝ”๋“œ๋ฅผ ์ž˜๊ฒŒ ์ชผ๊ฐœ ๊ฐ ๋ชจ๋“ˆ์ด ํŠน์ • ๊ธฐ๋Šฅ์ด๋‚˜ ์—ญํ• ์„ ์ˆ˜ํ–‰ํ•˜๋„๋ก ํ•ด์•ผ ํ•œ๋‹ค. 

    ์ฆ‰, ์ž์ฃผ ์‚ฌ์šฉํ•˜๋Š” ์ฝ”๋“œ์˜ ๊ฒฝ์šฐ ๋”ฐ๋กœ ๋ฉ”์†Œ๋“œ๋ฅผ ํ†ตํ•ด ๋งŒ๋“ค์–ด ์ฝ”๋“œ๋ฅผ ์žฌ์‚ฌ์šฉํ•ด ์œ ์ง€ ๋ณด์ˆ˜๋ฅผ ๋†’๊ฒŒ ๋งŒ๋“ค์–ด์•ผ ํ•œ๋‹ค.

    ํ•˜์ง€๋งŒ, ๋˜ ๋„ˆ๋ฌด ์ž˜๊ฒŒ ์ชผ๊ฐœ ๋งŽ์€ ๋ชจ๋“ˆ์„ ๋งŒ๋“ค์–ด ์ฝ”๋“œ๊ฐ€ ๋” ๊ธธ์–ด์งˆ ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ ์ฃผ์˜ํ•ด์•ผ ํ•œ๋‹ค. 

     

    6. ํ…Œ์ŠคํŠธ ๊ฐ€๋Šฅํ•œ ์ฝ”๋“œ ๋งŒ๋“ค๊ธฐ

    ํ…Œ์ŠคํŠธ๊ฐ€ ์‰ฝ๊ฒŒ ๊ฐ€๋Šฅํ•œ ๊ตฌ์กฐ = ํด๋ฆฐ์ฝ”๋“œ ๋ผ๊ณ  ํ•  ์ˆ˜ ์žˆ๋‹ค. 

    ๋Œ“๊ธ€