๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
Book TIL

ํด๋ฆฐ์ฝ”๋“œ Day 14 - 15. ์˜ค๋ฅ˜ ์ฒ˜๋ฆฌํ•˜๊ธฐ

by vividmin 2022. 5. 7.
320x100

 

โœ… ์ด ํฌ์ŠคํŒ…์€ ๋…ธ๋งˆ๋“œ ์ฝ”๋” ๋ถํด๋Ÿฝ  'ํด๋ฆฐ ์ฝ”๋“œ' ์ฑŒ๋ฆฐ์ง€๋ฅผ ์ง„ํ–‰ํ•˜๋ฉด์„œ ์ž‘์„ฑํ•˜๋Š” TIL์ด๋ฉฐ,  ์ถœ์ฒ˜๋Š” Clean Code์ž…๋‹ˆ๋‹ค.

 

 

๐Ÿ“š ๋ฒ”์œ„ :  ~07. ์˜ค๋ฅ˜์ฒ˜๋ฆฌ

 

 

๐Ÿ““ ์ฑ…์—์„œ ๊ธฐ์–ตํ•˜๊ณ  ์‹ถ์€ ๋‚ด์šฉ์„ ์จ๋ณด์„ธ์š”.
  • Error < Exception ๊ฐ€ ๋” ์ข‹์€ ์ด์œ ?
    • ๋…ผ๋ฆฌ์™€ ์˜ค๋ฅ˜์ฒ˜๋ฆฌ๋ฅผ ๋ถ„๋ฆฌํ•ด ์คŒ → ๋…๋ฆฝ์  ์ถ”๋ก  ๊ฐ€๋Šฅ → ์œ ์ง€๋ณด์ˆ˜์„ฑ โฌ† ๐Ÿ‘‰ ํŠผํŠผํ•˜๊ณ  ์ข‹์€ ์ฝ”๋“œ
  • ๋ญ”๊ฐ€ ์ž˜๋ชป๋  ๊ฐ€๋Šฅ์„ฑ์€ ํ•ญ์ƒ ์žˆ์ง€๋งŒ, ์–ด๋–ป๊ฒŒ ์˜ค๋ฅ˜๋ฅผ ์žก์•„๋‚ด๋Š”์ง€๋ฅผ ์ •์˜ํ•˜๋Š” ๊ฒƒ์ด ํ”„๋กœ๊ทธ๋ž˜๋จธ์˜ ์ค‘์š”ํ•œ ๋•๋ชฉ์ด๋‹ค.
  • ์™ธ๋ถ€ API ์‚ฌ์šฉ ์‹œ ๊ฐ์‹ธ๊ธฐ ๊ธฐ๋ฒ•์˜ ์žฅ์ 
    • ์™ธ๋ถ€ Library - ํ”„๋กœ๊ทธ๋žจ ๊ฐ„ ์˜์กด์„ฑ โฌ‡
    • ์ถ”ํ›„์— ๋‹ค๋ฅธ Library๋กœ ๋ฐ”๊พธ์–ด๋„ ๋น„์šฉ ์ž‘์Œ
    • ํ…Œ์ŠคํŠธ ์ฝ”๋“œ๋ฅผ ๋„ฃ์–ด์ค„ ์ˆ˜ ์žˆ์–ด ํ…Œ์ŠคํŠธ๋„ ์‰ฌ์›Œ์ง
  • Exception ์‚ฌ์šฉ ์‹œ ์ „ ํ›„ ์ƒํ™ฉ์— ๋Œ€ํ•œ ์ถฉ๋ถ„ํ•œ ์„ค๋ช…์ด ํ•„์š”ํ•จ
    • Error ์›์ธ/๊ฒฐ๊ณผ ์ฐพ๊ธฐ ์‰ฌ์›Œ์ง
    • Error message์— ์ •๋ณด ๋‹ด์•„์„œ Exception๊ณผ ํ•จ๊ป˜ throw
  • ๋ฉ”์„œ๋“œ๋กœ null ์ „๋‹ฌํ•˜์ง€ ๋ง์ž ๐Ÿ™…‍โ™€๏ธ
    • ๋ฉ”์„œ๋“œ์—์„œ null ๋ฐ˜ํ™˜๋„ โŒ
    • ์ •์ƒ์  ์ธ์ˆ˜๋กœ null ์„ ๊ธฐ๋Œ€ํ•˜๋Š” ๊ฒฝ์šฐ๋ฅผ ์ œ์™ธํ•˜๋ฉด ์‚ฌ์šฉ โŒ

 

 

โœ๐Ÿป ์˜ค๋Š˜ ์ฝ์€ ์†Œ๊ฐ์€? ๋– ์˜ค๋ฅด๋Š” ์ƒ๊ฐ์„ ๊ฐ€๋ณ๊ฒŒ ์ ์–ด๋ณด์„ธ์š”.

๊ฐœ๋ฐœ์„ ์ฒ˜์Œ ์‹œ์ž‘ํ•  ๋•Œ๋Š” ๋นจ๊ฐ„์ƒ‰ ์—๋Ÿฌ๊ฐ€ ๋œฐ ๋•Œ๋งˆ๋‹ค ์–ด์ฉ” ์ค„ ๋ชฐ๋ผํ•˜๊ธฐ๋งŒ ํ–ˆ๋‹ค. ํ•˜์ง€๋งŒ ์‹œ๊ฐ„์ด ์ง€๋‚˜๊ณ  ๋ฐฐ์šฐ๋Š” ๊ฒƒ์ด ์กฐ๊ธˆ์”ฉ ๋Š˜์–ด๊ฐˆ์ˆ˜๋ก ์—๋Ÿฌ๋ฅผ ๋‘๋ ค์›Œํ•˜์ง€ ๋ง๊ณ , ๋ญ˜ ์ž˜๋ชปํ–ˆ๋Š”์ง€ ์ฝ์–ด๋ณธ ํ›„ ๊ฒ€์ƒ‰ ํ›„์— ํ•ด๊ฒฐ์ฑ…์„ ์ฐพ์•„์„œ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•œ ํ›„ ํ•„์š”ํ•œ ๊ฒƒ์€ ๊ธฐ๋กํ•ด๋‘๋‹ˆ ๋‹ค์‹œ ์—๋Ÿฌ๋ฅผ ๋งŒ๋‚ฌ์„ ๋•Œ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ๋Š” ๋…ธํ•˜์šฐ๊ฐ€ ์ƒ๊ฒผ๋‹ค.

๊ทธ๋Ÿฐ๋ฐ ๋งŒ์•ฝ ์ฝ”๋“œ๋ฅผ ๊ตฌํ˜„ํ•  ๋•Œ ์—๋Ÿฌ ์ฒ˜๋ฆฌ๋ฅผ ํ•ด๋‘์ง€ ์•Š๋Š”๋‹ค๋ฉด ์‚ฌ์šฉ์ž๋‚˜ ๊ฐœ๋ฐœ์ž๋Š” ๋ฌด์—‡ ๋•Œ๋ฌธ์— ์˜ค๋ฅ˜๊ฐ€ ๋‚ฌ๋Š”์ง€ ์•Œ ์ˆ˜ ์—†์–ด์„œ ํฐ ํ˜ผ๋ž€์„ ๊ฒช๊ฒŒ ๋  ๊ฒƒ์ด๋‹ค. ์ด๋Ÿฐ ์ ์„ ๋ฐฉ์ง€ํ•˜๊ธฐ ์œ„ํ•ด์„œ ์˜ค๋Š˜ ๋ฐฐ์šด ์ ์„ ํ†ตํ•ด์„œ ์—๋Ÿฌ๋ฅผ ์ž˜ ์ž‘์„ฑํ•˜๋ฉด์„œ๋„ ๊นจ๋—ํ•œ ์ฝ”๋“œ๋ฅผ ๊ตฌํ˜„ํ•  ์ˆ˜ ์žˆ๋„๋ก ์—ด์‹ฌํžˆ ๊ณต๋ถ€ํ•ด์•ผ๊ฒ ๋‹ค๋Š” ์ƒ๊ฐ์ด ๋“ค์—ˆ๋‹ค. 

๊ทธ๋ฆฌ๊ณ  ํƒ€์ž…์Šคํฌ๋ฆฝํŠธ๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด์„œ ์ด๋ ‡๊ฒŒ ๋งŽ์€ ์‚ฌ์ „์ฒ˜๋ฆฌ๋ฅผ ํ•ด์•ผ ํ•˜๋‚˜ ํ•˜๋ฉด์„œ ํž˜๋“ค์–ดํ–ˆ๋Š”๋ฐ, ๋‹ค์‹œ ๋ณด๋‹ˆ ๊ฐœ๋ฐœ์ž๋กœ์„œ ์—๋Ÿฌ๊ฐ€ ๋ฐœ์ƒํ•˜์ง€ ์•Š๋„๋ก ์‚ฌ์ „์— ๋ฐฉ์ง€ํ•˜๋Š” ์ž‘์—…์„ ํ•˜๋Š” ๋งค์šฐ ์ค‘์š”ํ•œ ๊ณผ์ •์ด๋ผ๋Š” ์ƒ๊ฐ์ด ๋“ ๋‹ค.

 

 

๐Ÿ‘€ ๊ถ๊ธˆํ•œ ๋‚ด์šฉ์ด ์žˆ๊ฑฐ๋‚˜, ์ž˜ ์ดํ•ด๋˜์ง€ ์•Š๋Š” ๋‚ด์šฉ์ด ์žˆ๋‹ค๋ฉด ์ ์–ด๋ณด์„ธ์š”.

๋‹ค์–‘ํ•œ exception๋“ค์˜ ์˜๋ฏธ์— ๋Œ€ํ•ด์„œ ๊ฒ€์ƒ‰ํ•ด๋ณด์•˜๋Š”๋ฐ, ์•„๋ž˜ ๋ธ”๋กœ๊ทธ์— ์ž˜ ์ •๋ฆฌ๊ฐ€ ๋˜์–ด์žˆ์—ˆ๋‹ค.

 

Clean Code_7์žฅ. ์˜ค๋ฅ˜ ์ฒ˜๋ฆฌ

#๋…ธ๋งˆ๋“œ์ฝ”๋” #๋ถํด๋Ÿฝ #๋…ธ๊ฐœ๋ถ

mangbaam.github.io

 

๋ฐ˜์‘ํ˜•

๋Œ“๊ธ€