์ข‹์€ ์ฝ”๋“œ, ๋‚˜์œ ์ฝ”๋“œ - 1

๐Ÿ“–
Book
2024.04.24

book.jpeg


๐Ÿ““ ๋…์„œํ›„๊ธฐ

ใ€Œ์ข‹์€ ์ฝ”๋“œ, ๋‚˜์œ ์ฝ”๋“œใ€ ๋…์„œ ํ›„๊ธฐ

  • PART 1. ์ด๋ก 

    • 1์žฅ. ์ฝ”๋“œ ํ’ˆ์งˆ
    • 2์žฅ. ์ถ”์ƒํ™” ๊ณ„์ธต
    • 3์žฅ. ๋‹ค๋ฅธ ๊ฐœ๋ฐœ์ž์™€ ์ฝ”๋“œ ๊ณ„์•ฝ
    • 4์žฅ. ์˜ค๋ฅ˜
  • PART 2. ์‹ค์ „

    • 5์žฅ. ๊ฐ€๋…์„ฑ ๋†’์€ ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•˜๋ผ
    • 6์žฅ. ์˜ˆ์ธก ๊ฐ€๋Šฅํ•œ ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•˜๋ผ


์œ„ ๊ธฐ์žฌ๋œ ์ฑ•ํ„ฐ๋“ค์„ ๋…์„œํ•œ ๋’ค ๋ธ”๋กœ๊ทธ์— ํ›„๊ธฐ๋กœ ์ •๋ฆฌ๊นŒ์ง€ ํ•ด๋ณด๋ คํ•œ๋‹ค.

๋งŽ์€ ์ด๊ฐ€ ๊ทธ๋Ÿฌํ•˜์˜€๋“ฏ์ด, ๋‚˜ ๋˜ํ•œ ๊ฐœ๋ฐœ ์„œ์  ์ค‘ ์ฒ˜์Œ ์ฝ๊ณ  ๋…์„œ ํ›„๊ธฐ๋กœ ๋‚จ๊ธด ๋„์„œ๊ฐ€ ใ€ŒClean Codeใ€ ์˜€๋‹ค.



ใ€ŒClean Codeใ€ ๋…์„œ ํ›„๊ธฐ ๋ฐ”๋กœ๊ฐ€๊ธฐ


6์žฅ๊นŒ์ง€ ์ฝ์€ ํ›„๊ธฐ๋ฅผ ํ•œ์ค„๋กœ ์š”์•ฝํ•˜์ž๋ฉด, ใ€ŒClean Codeใ€ ์™€ ์œ ์‚ฌํ•˜๋‹ค๋Š” ์ƒ๊ฐ์ด ๋งŽ์ด ๋“ค์—ˆ๋‹ค. (์•„์ง ๋ชจ๋‘ ์ฝ์ง„ ๋ชปํ•˜์˜€์ง€๋งŒ!)

ํ•˜์ง€๋งŒ, ์ด ์ฑ…์˜ ์ €์ž๋Š” ์ž์‹ ์˜ ์ฃผ์žฅ์„ ํ’€์–ด๋‚˜๊ฐ€๋Š” ๋ฐฉ์‹์ด ์กฐ๊ธˆ ๋‹ฌ๋ž๋‹ค. ์–ด๋–ป๊ฒŒ ๋‹ค๋ฅธ์ง€์— ๋Œ€ํ•˜์—ฌ ์ž์„ธํ•œ ๋‚ด์šฉ์€ ์•„๋ž˜์— ๊ธฐ์žฌํ•˜์˜€๋‹ค.



1์žฅ. ์ฝ”๋“œ ํ’ˆ์งˆ


์ฝ”๋“œ ํ’ˆ์งˆ์ด ์ค‘์š”ํ•œ ์ด์œ (๋‹น์—ฐํ•˜์ง€๋งŒ! ์กฐ๊ธˆ ๋” ๊ตฌ์ฒด์ ์œผ๋กœ)์— ๋Œ€ํ•ด ๋‹ค๋ฃจ๋ฉฐ, ์ข‹์€ ์ฝ”๋“œ ํ’ˆ์งˆ์„ ๊ฐ€์ง„ ์†Œํ”„ํŠธ์›จ์–ด๊ฐ€ ์ค‘์žฅ๊ธฐ์ ์œผ๋กœ ๊ฐ€์ ธ์˜ค๋Š” ๋ฒ ๋„คํ•์— ๋Œ€ํ•ด ๊ฐ•์กฐํ•œ๋‹ค.

1์žฅ์„ ํ•œ์ค„๋กœ ์š”์•ฝํ•˜์ž๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค๊ณ  ๋А๊ผˆ๋‹ค.


โ€œ์„œ๋‘๋ฅด์ง€ ์•Š์œผ๋ฉด ๋” ๋น ๋ฅด๋‹ค.โ€


img1.jpeg

"์ข‹์€ ์ฝ”๋“œ, ๋‚˜์œ ์ฝ”๋“œ" page.25


1์žฅ์€ ์ด ์ฑ…์˜ ์ €์ž๊ฐ€ ์–˜๊ธฐํ•˜๊ณ ์žํ•˜๋Š” ์ฃผ์ œ์ธ โ€œ๊ณ ํ’ˆ์งˆ ์ฝ”๋“œโ€์˜ ์ค‘์š”์„ฑ์— ๋Œ€ํ•ด ์–ธ๊ธ‰ํ•œ๋‹ค.

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



2์žฅ. ์ถ”์ƒํ™” ๊ณ„์ธต


์ด๋ฒˆ ์žฅ์€ ์ถ”์ƒํ™”์— ๋Œ€ํ•œ ๊ทผ๊ฑฐ์žˆ๋Š” ์„œ์ˆ ๊ณผ ๋‹ค์–‘ํ•œ ์˜ˆ์‹œ๊ฐ€ ์ข‹์•˜๋‹ค.

์ด ์ฑ…์˜ ํฐ ์žฅ์ ์ด๋ผํ•˜๋ฉด, ๋‹ค์–‘ํ•œ ์˜ˆ์‹œ๊ฐ€ ํŠน์ •์–ธ์–ด๋กœ ํŽธํ–ฅ๋˜์–ด ์“ฐ์—ฌ์ง€์ง€ ์•Š์•˜๋‹ค. ๋‹ค์–‘ํ•œ ์–ธ์–ด์—์„œ ์•„์ด๋””์–ด๋ฅผ ์ฐจ์šฉํ•œ ์˜์‚ฌ์ฝ”๋“œ(pseudocode)๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค๋Š”๊ฒŒ ๊ฐ€์žฅ ํฐ ์žฅ์ ์ด๋ผ ์ƒ๊ฐํ•œ๋‹ค.

2์žฅ์€ ๋‹ค์–‘ํ•œ ์˜ˆ์‹œ(๋„ˆ๋ฌด ํฐ ํด๋ž˜์Šค ~ ์ธต์ด ๋„ˆ๋ฌด ์–‡์€ ํด๋ž˜์Šค)๋ฅผ ํ† ๋Œ€๋กœ ๊ฐ๊ฐ์˜ ์žฅ๋‹จ์ ์„ ๊ผฌ์ง‘๋Š”๋‹ค.

ใ€ŒClean Codeใ€ ์™€ ๋น„๊ตํ•˜๋ฉด(๊ณ„์† ๋น„๊ตํ•  ์˜ˆ์ •์ด๋‹ค..) ๋…ผ๋ž€์ด ์žˆ์„ ๋งŒํ•œ ์ฃผ์ œ๋ฅผ ์„ค๋ช…ํ•  ๋•Œ๋Š” ์ ๋‹นํ•œ ์˜ˆ์ œ์™€ ํ•จ๊ป˜ ๋…์ž๋“ค์„ ์ดํ•ด์‹œ์ผœ์ค€๋‹ค.

๊ทธ๋ฆฌ๊ณ  ์ €์ž์˜ ์ฃผ์žฅ์€ โ€œ์—ฌ๋Ÿฌ ๋ฐฉ๋ฒ•๋ก  ์ค‘ ํ•˜๋‚˜์ผ ๋ฟโ€์ด๋ผ ๋Š์ž„์—†์ด ์ฃผ์žฅํ•œ๋‹ค.

์ด๋ฒˆ ์žฅ์—์„œ ์ด ์ฑ…์ด ๊ฐ€์ง„ ์„ฑ๊ฒฉ(?)์„ ๊ณ ์Šค๋ž€ํžˆ ๋А๋‚„ ์ˆ˜ ์žˆ์—ˆ๋˜๊ฒƒ ๊ฐ™๋‹ค.



3์žฅ. ๋‹ค๋ฅธ ๊ฐœ๋ฐœ์ž์™€ ์ฝ”๋“œ ๊ณ„์•ฝ


3์žฅ๋ถ€ํ„ฐ๋Š” โ€œ๊ฐœ๋ฐœ๋ก โ€์— ๋Œ€ํ•œ ๋‚ด์šฉ์ด ์ฃผ๋œ ๋‚ด์šฉ์ด์—ˆ๋˜๊ฑฐ ๊ฐ™๋‹ค.

๋‹ค๋ฅธ ๊ฐœ๋ฐœ์ž..๋ผ๊ณ  ์ง€์นญํ•˜์˜€์ง€๋งŒ, ์ด๋Š” ๋‚˜ ์ž์‹ ๊ณผ์˜ ๊ณ„์•ฝ์ด๊ธฐ๋„ ํ•œ๋‹ค.


โ€œ์ž์‹ ์ด ์ž‘์„ฑํ•œ ์ฝ”๋“œ๋ผ๋„ 1๋…„ ํ›„์—๋Š” ์ž์„ธํ•œ ๋‚ด์šฉ์„ ์žŠ์–ด๋ฒ„๋ฆด ๊ฐ€๋Šฅ์„ฑ์ด ํฌ๋‹ค. ๋ฏธ๋ž˜์˜ ์ž์‹ ์€ ๋ณธ์งˆ์ ์œผ๋กœ ๋‹ค๋ฅธ ๊ฐœ๋ฐœ์ž๋ผ๊ณ  ๊ฐ„์ฃผํ•ด์•ผ ํ•œ๋‹ค.โ€


img2.jpeg

"์ข‹์€ ์ฝ”๋“œ, ๋‚˜์œ ์ฝ”๋“œ" page.61


์ด ๊ตฌ๋ฌธ์„ ์ฝ๊ณ  ๋‹ค์Œ๋‚  (ํ•˜ํ•„ ์˜ค๋Š˜..) 21๊ฐœ์›” ์ „ ์ฝ”๋“œ๋ฅผ ์ˆ˜์ •ํ•˜๋‹ค ๊ฒฝ์•…์„ ๊ธˆ์น˜ ๋ชปํ•˜์˜€๋‹ค..


img3.png

๋ญ์ง€ ์ด ์• ๋‹ˆ์Šคํฌ๋ฆฝํŠธ + ๊ตฌ์กฐ๋ถ„ํ•ด ํ• ๋‹น์€..๐Ÿ˜ฎโ€๐Ÿ’จ


๋‚ด๊ฐ€ ์“ด ์ฝ”๋“œ๊ฐ€ ๋งž๋‚˜ ์‹ถ์–ด GitLens๋ฅผ ํ†ตํ•ด ๋ณด๋‹ˆ ๋‚ด๊ฐ€ ๋งž๋„ค..?? 21๊ฐœ์›” ์ „์˜ ๋‚˜์˜ ๋ฌด์ง€๊ฐ€ ๋“œ๋Ÿฌ๋‚˜์„œ ๋„ˆ๋ฌด ๋ผˆ์•„ํ”„๊ฒŒ ๋‹ค๊ฐ€์™”๋‹ค. ๐Ÿฅฒ

์ด ์ฝ”๋“œ๋ฅผ ๊ณต์œ ํ•˜๋ฉฐ, ์ฝ”๋“œ ๋ฆฌ๋ทฐ๋ฅผ ํ†ตํ•ด ์ด๋Ÿฐ ์ฝ”๋“œ๋“ค์ด ์ฝ”๋“œ๋ฒ ์ด์Šค์— ๋ณ‘ํ•ฉ๋˜์ง€ ์•Š๊ฒŒ๋” ํŒ€์› ๋ชจ๋‘ ๋…ธ๋ ฅํ•˜์ž ๋‹ค์งํ•  ์ˆ˜ ์žˆ๋Š” ๊ณ„๊ธฐ๊ฐ€ ๋˜์–ด ์˜คํžˆ๋ ค(?) ์ข‹์•˜๋‹ค.



4์žฅ. ์˜ค๋ฅ˜


์ค‘์š”ํ•œ ์ด์•ผ๊ธฐ๋ฅผ ๋‹ด์€ ์žฅ์ด์—ˆ๋‹ค.

์ €์ž๋„ ์ด๋ฒˆ 4์žฅ์€ ์ดˆ์ž…๋ถ€ํ„ฐ ๊ธธ๊ฒŒ ํ’€์–ด ์“ฐ๊ฒ ๋‹ค ๋ฏธ๋ฆฌ ์„ ์ „ํฌ๊ณ (?)๋ฅผ ํ–ˆ๋‹ค.

๋‚ด์šฉ์€ ๋น„๋ก ๊ธธ์—ˆ์ง€๋งŒ ์ „๋‹ฌํ•˜๊ณ ์žํ•˜๋Š” ์ฃผ๋œ ๋‚ด์šฉ๋“ค์„ ์š”์•ฝํ•˜์ž๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™์•˜๋‹ค.

  • ๋ณต๊ตฌํ•  ์ˆ˜ ์žˆ๋Š” ์˜ค๋ฅ˜์™€ ๋ณต๊ตฌํ•  ์ˆ˜ ์—†๋Š” ์˜ค๋ฅ˜๋ฅผ ๊ตฌ๋ถ„ํ•˜์—ฌ ์ฒ˜๋ฆฌํ•˜๋ผ.
  • ์š”๋ž€ํ•˜๊ฒŒ ์‹คํŒจํ•˜๋ผ.
  • ๋ช…์‹œ์ ์œผ๋กœ ์˜ค๋ฅ˜๋ฅผ ์ „๋‹ฌํ•˜๋ผ.
  • (๋ถ€๋ก) ์ปดํŒŒ์ผ๋Ÿฌ ๊ฒฝ๊ณ ๋ฅผ ๋ฌด์‹œํ•˜์ง€ ๋ง๋ผ.

์ด ์™ธ์—๋„ ์—ญ์‹œ๋‚˜ ์ €์ž๋Š” ์ค‘๋ก ์„ ์ง€ํ‚จ๋‹ค. โ€œ์•”์‹œ์ ์œผ๋กœ ์˜ค๋ฅ˜๋ฅผ ์ „๋‹ฌํ•˜๋Š” ๋ฐฉ๋ฒ•โ€์— ๋Œ€ํ•ด์„œ๋„ ์†Œ๊ฐœํ•˜๊ณ  ๊ทธ ๋‘˜์˜ ์žฅ๋‹จ์ ์„ ๊ผฌ์ง‘๋Š”๋‹ค. (์ด์   ์ต์ˆ™ํ•˜๋‹ค)

๋‹ค๋งŒ, ์œ„ ๋‚ด์šฉ์„ ์ฃผ๋œ ๋ฐฉ๋ฒ•๋ก ์ด๋ผ ์„ค๋ช…ํ•˜๋ฉฐ ๊ทธ ๊ทผ๊ฑฐ์— ๋Œ€ํ•ด์„œ ๊ตฌ์ฒด์ ์œผ๋กœ ์„œ์ˆ ํ•œ๋‹ค.

๊ทธ๋ฆฌ๊ณ  ๋‚˜ ๋˜ํ•œ ์ €์ž์˜ ์ƒ๊ฐ๊ณผ ๊ฐ™์œผ๋ฉฐ, ๊ฐ™์€ ๋ฐฉ๋ฒ•๋ก ์œผ๋กœ ์˜ˆ์™ธ์˜ ์ƒํ™ฉ์„ ์ฒ˜๋ฆฌํ•˜๊ณ  ์žˆ๋‹ค.



5์žฅ. ๊ฐ€๋…์„ฑ ๋†’์€ ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•˜๋ผ


์ด๋ฒˆ 5์žฅ ๋˜ํ•œ ใ€ŒClean Codeใ€ ์™€ ๋น„๊ตํ•˜๋ฉด(๊ทธ๋ ‡๋‹ค, ๋˜ ๋‚˜์™”๋‹ค.) ์ „ํ˜€ ๋‹ค๋ฅธ ๋ฐฉํ–ฅ์œผ๋กœ ๋ฐฉ๋ฒ•๋ก ์„ ์ œ์‹œํ•œ๋‹ค.

๋ฐ”๋กœ โ€œ์ฃผ์„โ€์— ๋Œ€ํ•œ ๋‚ด์šฉ์ด๋‹ค.


โ€œํด๋ž˜์Šค์™€ ๊ฐ™์ด ํฐ ๋‹จ์œ„์˜ ์ฝ”๋“œ๊ฐ€ ๋ฌด์—‡์„ ํ•˜๋Š”์ง€ ์š”์•ฝํ•˜๋Š” ๋†’์€ ์ˆ˜์ค€์—์„œ์˜ ์ฃผ์„๋ฌธ์€ ์œ ์šฉํ•˜๋‹ค.โ€


img5.jpeg

"์ข‹์€ ์ฝ”๋“œ, ๋‚˜์œ ์ฝ”๋“œ" page.127


ใ€ŒClean Codeใ€ ์—์„œ๋Š” โ€œ์ฃผ์„โ€์€ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ํ‘œํ˜„๋œ๋‹ค.

  • ์ฃผ์„์ด ํ•„์š”ํ•œ ์ฝ”๋“œ๋Š” ์ž˜๋ชป ์“ฐ์—ฌ์ง„ ์ฝ”๋“œ์ด๋‹ค.

์ด๋ฒˆ ์ฑ…์—์„œ๋Š” ์˜ฌ๋ฐ”๋ฅธ โ€œ์ฃผ์„โ€ ์‚ฌ์šฉ๋ฒ•์— ๋Œ€ํ•ด ๋ช‡๊ฐ€์ง€ ์˜ˆ์‹œ๋กœ ๋…์ž๋“ค์„ ์„ค๋“ํ•œ๋‹ค.

๊ทธ ์ค‘ ๊ณต๊ฐ์ด ๊ฐ€๊ณ , ์‹ค์ œ๋กœ ๋„์ž…ํ•˜๊ณ  ์‹ถ์€ โ€œ์ฃผ์„โ€ ์‚ฌ์šฉ ์˜ˆ์‹œ๋ฅผ ๊ฐ€์ ธ์™€๋ณด์•˜๋‹ค.


img6.jpeg

"์ข‹์€ ์ฝ”๋“œ, ๋‚˜์œ ์ฝ”๋“œ" page.130


์ฃผ์„์— ๋ฐ”๋กœ #XXX ๊ฐ™์€ ์ด์Šˆ ๋„˜๋ฒ„๋ฅผ ์–ธ๊ธ‰ํ•˜๋Š” ํŒ์ด์—ˆ๋‹ค.

์–ด๋–ค ์ฝ”๋“œ๊ฐ€ ์™œ ์กด์žฌํ•˜๋Š”์ง€ ์ด์œ ๋ฅผ ์„ค๋ช…ํ•˜๊ธฐ๋ž€ ๋น„์ฆˆ๋‹ˆ์Šค ํžˆ์Šคํ† ๋ฆฌ์™€ ์—ฐ๊ด€์žˆ๊ธฐ ๋•Œ๋ฌธ์— ์‰ฝ์ง€ ์•Š๋‹ค. ์ฃผ์ ˆ ์ฃผ์ ˆ ๊ธธ๊ฒŒ ์“ฐ๊ธฐ ๋ณด๋‹ค ์ด์Šˆ ๋„˜๋ฒ„๋ฅผ ์–ธ๊ธ‰ํ•˜์—ฌ ์งง๊ณ  ๊ฐ„๊ฒฐํ•˜๊ฒŒ ๋‚จ๊ธฐ๋Š” ํŒ์ด๋‹ค.

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



6์žฅ. ์˜ˆ์ธก ๊ฐ€๋Šฅํ•œ ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•˜๋ผ


์ด๋ฒˆ ์žฅ์€ 1์žฅ์˜ โ€œ์ฝ”๋“œ ํ’ˆ์งˆโ€๊ณผ ์œ ์‚ฌํ•˜๊ฒŒ ํ˜๋Ÿฌ๊ฐ”๋‹ค. (์•ž์„  5์žฅ ๋˜ํ•œ ๋งˆ์ฐฌ๊ฐ€์ง€์˜€์ง€๋งŒ!)

์˜ค์šฉํ•  ์ˆ˜ ์žˆ๋Š” ์ฝ”๋“œ์˜ ์–‘์„ ์ค„์ด๊ณ , ๋ณ„๋„์˜ ์ธ์ˆ˜์ธ๊ณ„ ์—†์ด ์œ ์ง€๋  ์ˆ˜ ์žˆ๋Š” ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•˜๋ผ๋Š” ๋‚ด์šฉ์ด ์ฃผ๋œ ๋‚ด์šฉ์ด์—ˆ๋‹ค.

๋˜ํ•œ, ์—ด๊ฑฐํ˜•(enum) ์ž๋ฃŒํ˜• ์ฒ˜๋ฆฌ์— ๋Œ€ํ•ด ์ฃผ์˜ํ•˜๋ผ ๊ฐ•์กฐํ•˜์˜€๋‹ค. (์—ด๊ฑฐํ˜•(enum) ์ž๋ฃŒํ˜•์„ ์• ์šฉํ•˜๊ธฐ์— ๋„ˆ๋ฌด๋„ ๋ฐ˜๊ฐ€์šด ์ฃผ์ œ์˜€๋‹ค! ๐Ÿคฉ)

์ตœ๊ทผ ๋‚˜๋„ ์•„๋ž˜์™€ ๊ฐ™์€ ์—ด๊ฑฐํ˜•(enum) ์ž๋ฃŒํ˜•์„ ์ˆ˜์ •ํ•œ ์ ์ด ์žˆ๋‹ค.

export enum GenderEnum {
  MAN = 'M',
  WOMAN = 'W',
  GENDERLESS ='NONE', // ์ถ”๊ฐ€๋œ ์—ด๊ฒƒ๊ฐ’
}

์‹œ๋Œ€๊ฐ€ ๋ฐ”๋€Œ๋ฉฐ ๋‹น์—ฐํ•˜๋‹ค ์ƒ๊ฐํ•˜๋Š” ๊ฒƒ๋“ค์ด ๋”์ด์ƒ ๋‹น์—ฐํ•˜์ง€ ์•„๋‹ ์ˆ˜ ์žˆ๋‹ค. ๋‹น์—ฐํ•˜๋‹ค ์ƒ๊ฐํ•˜์—ฌ ์—ด๊ฑฐํ˜•(enum) ์ž๋ฃŒํ˜•์œผ๋กœ ๊ด€๋ฆฌํ•˜๋Š” ๊ฒƒ์€ ํฐ ์˜ค๋งŒ์ด๋‹ค.

๊ทธ๋Ÿฌ๋ฏ€๋กœ ์—ด๊ฒƒ๊ฐ’์ด ์ถ”๊ฐ€๋  ์ˆ˜ ์žˆ์Œ์„ ์–ธ์ œ๋‚˜ ๋Œ€๋น„ํ•˜๋Š” ์ฝ”๋“œ๋ฅผ ์Šต๊ด€ํ™” ํ•˜๋ผ ๊ฐ•์กฐํ•œ๋‹ค.

์‹ค์ œ ๊ฒฝํ—˜ํ–ˆ๋˜ ์‚ฌ๋ก€๋ผ ํฌ๊ฒŒ ์™€ ๋‹ฟ์•˜๋‹ค.



๐Ÿค” Understanding

์•ž์„œ ์ฝ์€ ใ€ŒClean Codeใ€ ์™€ ๋‹ค๋ฅด๊ฒŒ ์ด๋ฒˆ ใ€Œ์ข‹์€ ์ฝ”๋“œ, ๋‚˜์œ ์ฝ”๋“œใ€ ๋Š” ๊ฑฐ๋ถํ•˜์ง€ ์•Š๊ณ  ์‰ฝ๊ฒŒ ์ฝํ˜”๋‹ค.

์•ž์„œ ์ฝ์€ ์ฑ…์˜ ์˜ˆ์‹œ๋Š” ๋ชจ๋‘ Java๋กœ ๊ตฌ์„ฑ๋˜์–ด ์žˆ๊ธฐ์— ์˜ˆ์ œ ์ฝ”๋“œ๋ฅผ ๋ณด๋ฉด ์‰ฝ๊ฒŒ ํฅ๋ฏธ๊ฐ€ ๋–จ์–ด์กŒ๋‹ค. ํ•˜์ง€๋งŒ, ์ด๋ฒˆ ์ฑ…์˜ ์˜ˆ์‹œ๋“ค์€ ์˜์‚ฌ์ฝ”๋“œ(pseudocode)๋กœ ๊ตฌ์„ฑ๋˜์–ด ์žˆ์œผ๋ฉฐ, ์˜ˆ์‹œ๋กœ ๋“œ๋Š” ์‚ฌ๋ก€์—์„œ ๋˜ํ•œ ์—ฌ๋Ÿฌ ์–ธ์–ด๋“ค(Java, C++, JavaScript, TypeScript ๋“ฑ๋“ฑ..)์„ ํฌ๊ด„์ ์œผ๋กœ ์–ธ๊ธ‰ํ•˜์—ฌ ํฅ๋ฏธ๋„๊ฐ€ ๋†’์•˜๋˜๊ฒŒ ํฐ ์žฅ์ ์ด์—ˆ๋‹ค.


์‹ค์ œ๋กœ ๋งค์ง๊ฐ’ ์‚ฌ๋ก€๋กœ JavaScript์˜ indexOf() ํ•จ์ˆ˜์˜ -1 ๋ฆฌํ„ด๊ฐ’์ด ์–ธ๊ธ‰๋  ๋•Œ๋Š” ๋ˆˆ์ด ๋™๊ทธ๋ผ์กŒ๋‹ค. ๐Ÿ˜ณ


์ ˆ๋ฐ˜์ •๋„ ์ฝ๊ณ  ๋‚œ ํ›„๊ธฐ๋กœ๋Š” 1~2๋…„์ฐจ ์ฃผ๋‹ˆ์–ด๋“ค์ด ์ฝ๊ธฐ์—๋Š” ์ข‹์€ ์„œ์ (ํŠนํžˆ๋‚˜, ์œ ์ง€๋ณด์ˆ˜ ์—…๋ฌด๋ฅผ ๋‹ด๋‹นํ•˜๊ณ  ์žˆ๋‹ค๋ฉด ๋”์šฑ ๋”)์ด๋ผ ์ƒ๊ฐํ•œ๋‹ค.

์ด ํ‰์„ ๋งํ•˜๊ธฐ์—” ์•„์ง ์ ˆ๋ฐ˜ ๊ฐ€๋Ÿ‰์˜ ๋ถ„๋Ÿ‰์ด ๋‚จ์•˜๊ธฐ์— ์ œ๋Œ€๋กœ ๋œ ๋…์„œ ํ›„๊ธฐ๋Š” ๋งˆ์ € ์ฝ๊ณ  ๋‚จ๊ฒจ๋ณด๋„๋กํ•˜๊ฒ ๋‹ค.



Previous
๋‹ค์ค‘ ์ธ์Šคํ„ด์Šค ํ™˜๊ฒฝ์—์„œ ๋™์‹œ์„ฑ์„ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•œ Redis ๋ถ„์‚ฐ๋ฝ ๊ตฌํ˜„ํ•˜๊ธฐ
๐Ÿ“šTIL
2024.04.21
Next
ELK Stack ๊ตฌํ˜„ํ•˜๊ธฐ
๐Ÿ“šTIL
2024.05.01