Skip to content

realcdh/javascript-zombie-survival

ย 
ย 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

57 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

image

์ข€๋น„ ์•„ํฌ์นผ๋ฆฝ์Šค: ๊ฐ์—ผ์ž์˜ ์ด์ง€์„ ๋‹ค

๐Ÿ” ์ง„ํ–‰๋ฐฉ์‹

  • ๋ฏธ์…˜์€ ๊ธฐ๋Šฅ ์š”๊ตฌ์‚ฌํ•ญ, ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์š”๊ตฌ์‚ฌํ•ญ, ๊ณผ์ œ ์ง„ํ–‰ ์š”๊ตฌ์‚ฌํ•ญ ์„ธ ๊ฐ€์ง€๋กœ ๊ตฌ์„ฑ๋˜์–ด ์žˆ๋‹ค.
  • ์„ธ ๊ฐœ์˜ ์š”๊ตฌ์‚ฌํ•ญ์„ ๋งŒ์กฑํ•˜๊ธฐ ์œ„ํ•ด ๋…ธ๋ ฅํ•œ๋‹ค. ํŠนํžˆ ๊ธฐ๋Šฅ์„ ๊ตฌํ˜„ํ•˜๊ธฐ ์ „์— ๊ธฐ๋Šฅ ๋ชฉ๋ก์„ ๋งŒ๋“ค๊ณ , ๊ธฐ๋Šฅ ๋‹จ์œ„๋กœ ์ปค๋ฐ‹ ํ•˜๋Š” ๋ฐฉ์‹์œผ๋กœ ์ง„ํ–‰ํ•œ๋‹ค.

๐ŸŽฏ ๊ธฐ๋Šฅ ์š”๊ตฌ์‚ฌํ•ญ

์›์ธ ๋ถˆ๋ช…์˜ ๊ฐ์—ผ ์‚ฌํƒœ๊ฐ€ ๋ฐœ์ƒํ–ˆ๋‹ค. ๋„์‹œ๋Š” ๋ด‰์‡„๋˜์—ˆ๊ณ , ๋‹น์‹ ์€ ์ด๋ฏธ ์ข€๋น„์—๊ฒŒ ๋ฌผ๋ ธ๋‹ค. ์™„์ „ํžˆ ์ข€๋น„๋กœ ๋ณ€ํ•˜๊ธฐ ์ „์— ์น˜๋ฃŒ์ œ๋ฅผ ์™„์„ฑํ•˜๊ฑฐ๋‚˜, 15์ผ์„ ๋ฒ„ํ…จ ๊ตฌ์กฐ๋Œ€๋ฅผ ๊ธฐ๋‹ค๋ ค์•ผ ํ•œ๋‹ค.

์ด ๊ฒŒ์ž„์€ ์›น ๋ธŒ๋ผ์šฐ์ €์—์„œ ์‹คํ–‰๋œ๋‹ค. ํ”Œ๋ ˆ์ด์–ด๋Š” ๋ฒ„ํŠผ์„ ํด๋ฆญํ•ด ์นด๋“œ๋ฅผ ๋ฝ‘๊ณ  ์„ ํƒํ•˜๋ฉฐ, ๋ชจ๋“  ๊ฒฐ๊ณผ๋Š” ํ™”๋ฉด์— ํ‘œ์‹œ๋œ๋‹ค.

  • ๊ฒŒ์ž„ ์‹œ์ž‘ ์‹œ ํ”Œ๋ ˆ์ด์–ด์˜ ์ดˆ๊ธฐ ์ƒํƒœ๋Š” ์ฒด๋ ฅ 100, ์‹๋Ÿ‰ 3, ๊ฐ์—ผ๋„ 10์ด๋‹ค.
  • ๋งค์ผ(Day) ์นด๋“œ 1์žฅ์„ ๋ฝ‘๊ณ , ์นด๋“œ์˜ ์„ ํƒ์ง€ 2๊ฐœ ์ค‘ 1๊ฐœ๋ฅผ ๊ณ ๋ฅธ๋‹ค.
  • ์„ ํƒ์ง€๋ฅผ ๊ณ ๋ฅธ ํ›„ 2์ดˆ(2000ms) ๊ฐ€ ์ง€๋‚œ ํ›„ ๊ฒฐ๊ณผ๊ฐ€ ํ™”๋ฉด์— ํ‘œ์‹œ๋œ๋‹ค.
  • ๋งค์ผ ์„ ํƒ์ง€๋ฅผ ๊ณ ๋ฅด๋ฉด ์นด๋“œ ํšจ๊ณผ๊ฐ€ ๋จผ์ € ์ ์šฉ๋œ ํ›„, ์‹๋Ÿ‰์ด 1 ์†Œ๋น„๋˜๋ฉฐ ๊ฐ์—ผ๋„๊ฐ€ 3 ์ฆ๊ฐ€ํ•œ๋‹ค.
  • ์‹๋Ÿ‰์ด 0์ธ ์ƒํƒœ์—์„œ ์„ ํƒ ์‹œ ์ฒด๋ ฅ์ด 10 ์ถ”๊ฐ€ ๊ฐ์†Œํ•œ๋‹ค.
  • ์น˜๋ฃŒ ์„ ํƒ๊ณผ ๊ตฌ์กฐ ์‘๋‹ต ํšŸ์ˆ˜๊ฐ€ ํ™”๋ฉด ์ƒ๋‹จ ์Šคํƒฏ์— ์‹ค์‹œ๊ฐ„์œผ๋กœ ํ‘œ์‹œ๋œ๋‹ค.
  • ์ฒด๋ ฅ์€ 0 ๋ฏธ๋งŒ์œผ๋กœ ๋‚ด๋ ค๊ฐ€์ง€ ์•Š๋Š”๋‹ค. (์ตœ์†Ÿ๊ฐ’ 0)
  • ์‹๋Ÿ‰์€ 0 ๋ฏธ๋งŒ์œผ๋กœ ๋‚ด๋ ค๊ฐ€์ง€ ์•Š๋Š”๋‹ค. (์ตœ์†Ÿ๊ฐ’ 0)
  • ๊ฐ์—ผ๋„๋Š” 0 ๋ฏธ๋งŒ์œผ๋กœ ๋‚ด๋ ค๊ฐ€์ง€ ์•Š๋Š”๋‹ค. (์ตœ์†Ÿ๊ฐ’ 0, 0์€ ์ผ์‹œ์  ์–ต์ œ ์ƒํƒœ๋กœ ์™„์น˜๊ฐ€ ์•„๋‹˜)
  • ํ”Œ๋ ˆ์ด์–ด๋Š” ์–ธ์ œ๋“  ๊ฒŒ์ž„์„ ํฌ๊ธฐํ•  ์ˆ˜ ์žˆ๋‹ค.

๐Ÿƒ ์นด๋“œ ๋ฑ ๊ทœ์น™

20์žฅ์˜ ์นด๋“œ๋กœ ๊ตฌ์„ฑ๋œ ๋ฑ์„ ์…”ํ”Œํ•˜์—ฌ ์‚ฌ์šฉํ•œ๋‹ค. ๋งค์ผ 1์žฅ์„ ๋ฝ‘๊ณ  ์„ ํƒ์ง€๋ฅผ ๊ณ ๋ฅธ๋‹ค. ๋ฑ์ด ์†Œ์ง„๋˜๋ฉด ์ž๋™์œผ๋กœ ๋ฆฌ์…”ํ”Œ๋œ๋‹ค.

์นด๋“œ ์žฅ์ˆ˜ ์„ ํƒ์ง€ A ์„ ํƒ์ง€ B
๐ŸงŸ ์ƒ์กด์ž ์‹œ์ฒด 4 ๋ฐฐ๋‚ญ์งธ๋กœ ๊ฐ€์ ธ์˜จ๋‹ค (์‹๋Ÿ‰ +3, ๊ฐ์—ผ๋„ +8) ๊ฒ‰์— ์žˆ๋Š” ๊ฒƒ๋งŒ ์ง‘๋Š”๋‹ค (์‹๋Ÿ‰ +1)
๐Ÿ’Š ๋ถ€์ƒ๋‹นํ•œ ๊ตฐ์ธ 4 ์‹๋Ÿ‰์„ ๊ฑด๋„ค๊ณ  ์•ฝ์„ ๋ฐ›๋Š”๋‹ค (์‹๋Ÿ‰ -1, ๊ฐ์—ผ๋„ -20) ๋ชธ์‹ธ์›€ ๋์— ์‹๋Ÿ‰๋งŒ ์ฑ™๊ธฐ๊ณ  ๋– ๋‚œ๋‹ค (์ฒด๋ ฅ -10, ์‹๋Ÿ‰ +2)
๐Ÿ”ช ์ž„์‹œ ์ˆ˜์ˆ  3 ๊ฐ์—ผ ๋ถ€์œ„๋ฅผ ์ง์ ‘ ๋„๋ ค๋‚ธ๋‹ค (์ฒด๋ ฅ -25, ๊ฐ์—ผ๋„ -25) ์ด๋ฅผ ์•…๋ฌผ๊ณ  ์ฐธ๋Š”๋‹ค (์ฒด๋ ฅ -5, ๊ฐ์—ผ๋„ +10)
๐Ÿš— ๊ตฐ์šฉ ์ฐจ๋Ÿ‰ ํ–‰๋ ฌ 3 ๋›ฐ์–ด๋‚˜๊ฐ€ ์‹ ํ˜ธ๋ฅผ ๋ณด๋‚ธ๋‹ค (๊ตฌ์กฐ ํฌ์ธํŠธ +1, ๊ฐ์—ผ๋„ +8) ๋ชธ์„ ๋‚ฎ์ถ”๊ณ  ๋ฐฉํ–ฅ๋งŒ ํ™•์ธํ•œ๋‹ค (์ฒด๋ ฅ +5)
๐Ÿ’ง ์˜ค์—ผ๋œ ์›…๋ฉ์ด 3 ๊ทธ๋ƒฅ ๋งˆ์‹ ๋‹ค. ํƒˆ์ˆ˜๋ณด๋‹ค ๋‚ซ๋‹ค (์ฒด๋ ฅ +5, ๊ฐ์—ผ๋„ +15) ์ฐธ๋Š”๋‹ค. ๋น—๋ฌผ์„ ๊ธฐ๋‹ค๋ฆฐ๋‹ค (์ฒด๋ ฅ -10)
๐Ÿš› ๊ตฌ์กฐ ํŠธ๋Ÿญ 3 ์ „๋ ฅ์œผ๋กœ ๋‹ฌ๋ ค๊ฐ„๋‹ค (์ฒด๋ ฅ -20, ๊ตฌ์กฐ ํฌ์ธํŠธ +1) ์ฒด๋ ฅ์„ ์•„๋ผ๊ณ  ์‰ฐ๋‹ค (์ฒด๋ ฅ +10)

๐Ÿ ์—”๋”ฉ ์กฐ๊ฑด

์‹คํŒจ ์—”๋”ฉ

  • ์ฒด๋ ฅ โ‰ค 0 โ†’ ์‚ฌ๋ง
  • ๊ฐ์—ผ๋„ โ‰ฅ 100 โ†’ ์ข€๋น„ํ™”

์„ฑ๊ณต ์—”๋”ฉ

  • ์น˜๋ฃŒ ์„ ํƒ 5ํšŒ ๋ˆ„์  โ†’ ์น˜๋ฃŒ ์„ฑ๊ณต
    • ์น˜๋ฃŒ ๋„์›€: ๐Ÿ’Š ๋ถ€์ƒ๋‹นํ•œ ๊ตฐ์ธ - ์‹๋Ÿ‰์„ ๊ฑด๋„ค๊ณ  ์•ฝ์„ ๋ฐ›๋Š”๋‹ค
    • ์ž๊ฐ€์น˜๋ฃŒ: ๐Ÿ”ช ์ž„์‹œ ์ˆ˜์ˆ  - ๊ฐ์—ผ ๋ถ€์œ„๋ฅผ ์ง์ ‘ ๋„๋ ค๋‚ธ๋‹ค
  • ๊ตฌ์กฐ ํฌ์ธํŠธ 3 ์ด์ƒ + Day > 10 โ†’ ๊ตฌ์กฐ ์„ฑ๊ณต
  • Day > 15 โ†’ ์ƒ์กด ์„ฑ๊ณต (๊ตฌ์กฐ๋Œ€ ๋„์ฐฉ)

โš ๏ธ ์—”๋”ฉ ์šฐ์„ ์ˆœ์œ„

์—ฌ๋Ÿฌ ์—”๋”ฉ ์กฐ๊ฑด์ด ๋™์‹œ์— ์ถฉ์กฑ๋  ๊ฒฝ์šฐ, ์‹คํŒจ ์—”๋”ฉ(์‚ฌ๋ง / ์ข€๋น„ํ™”)์„ ์„ฑ๊ณต ์—”๋”ฉ๋ณด๋‹ค ์šฐ์„  ์ ์šฉํ•œ๋‹ค.


๐Ÿ“Š ์—”๋”ฉ ๊ฒฐ๊ณผ ์ถœ๋ ฅ

๊ฒŒ์ž„์ด ์ข…๋ฃŒ๋˜๋ฉด ๊ฒฐ๊ณผ ํ™”๋ฉด์— ๋‹ค์Œ ์ •๋ณด๋ฅผ ํ‘œ์‹œํ•œ๋‹ค.

ํ•ญ๋ชฉ ์„ค๋ช…
์ƒ์กด ์ผ์ˆ˜ ๋งˆ์ง€๋ง‰์œผ๋กœ ์„ ํƒํ•œ Day
์ตœ์ข… ์ฒด๋ ฅ ์ข…๋ฃŒ ์‹œ์ ์˜ ์ฒด๋ ฅ
์ตœ์ข… ์‹๋Ÿ‰ ์ข…๋ฃŒ ์‹œ์ ์˜ ์‹๋Ÿ‰
์ตœ์ข… ๊ฐ์—ผ๋„ ์ข…๋ฃŒ ์‹œ์ ์˜ ๊ฐ์—ผ๋„
์—”๋”ฉ ์‚ฌ๋ง / ์ข€๋น„ํ™” / ์น˜๋ฃŒ ์„ฑ๊ณต / ๊ตฌ์กฐ ์„ฑ๊ณต / ์ƒ์กด ์„ฑ๊ณต / ํฌ๊ธฐ

๐Ÿ’ป ์‹คํ–‰ ๊ฒฐ๊ณผ ์˜ˆ์‹œ

Image


โœ… ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์š”๊ตฌ์‚ฌํ•ญ

  • var๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š”๋‹ค. const, let๋งŒ ์‚ฌ์šฉํ•œ๋‹ค.
  • ์ „์—ญ ๋ณ€์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š”๋‹ค.
  • ์™ธ๋ถ€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š๊ณ , ์ˆœ์ˆ˜ Vanilla JS๋กœ๋งŒ ๊ตฌํ˜„ํ•œ๋‹ค.
  • Airbnb ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ์ฝ”๋“œ ์ปจ๋ฒค์…˜์„ ์ง€ํ‚ค๋ฉด์„œ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ํ•œ๋‹ค.
  • indent(์ธ๋ดํŠธ, ๋“ค์—ฌ์“ฐ๊ธฐ) depth๋ฅผ 2๊ฐ€ ๋„˜์ง€ ์•Š๋„๋ก ๊ตฌํ˜„ํ•œ๋‹ค.
    • ์˜ˆ๋ฅผ ๋“ค์–ด while๋ฌธ ์•ˆ์— if๋ฌธ์ด ์žˆ์œผ๋ฉด ๋“ค์—ฌ์“ฐ๊ธฐ๋Š” 2์ด๋‹ค.
    • ํžŒํŠธ: indent depth๋ฅผ ์ค„์ด๋Š” ์ข‹์€ ๋ฐฉ๋ฒ•์€ ํ•จ์ˆ˜(๋˜๋Š” ๋ฉ”์†Œ๋“œ)๋ฅผ ๋ถ„๋ฆฌํ•˜๋Š” ๊ฒƒ์ด๋‹ค.
  • ํ•จ์ˆ˜(๋˜๋Š” ๋ฉ”์†Œ๋“œ)๊ฐ€ ํ•œ ๊ฐ€์ง€ ์ผ๋งŒ ํ•˜๋„๋ก ์ตœ๋Œ€ํ•œ ์ž‘๊ฒŒ ๋งŒ๋“ค์–ด๋ผ.
  • import ๋ฌธ์„ ์ด์šฉํ•ด ์Šคํฌ๋ฆฝํŠธ๋ฅผ ๋ชจ๋“ˆํ™”ํ•˜๊ณ  ๋ถˆ๋Ÿฌ์˜ฌ ์ˆ˜ ์žˆ๊ฒŒ ๋งŒ๋“ ๋‹ค.
  • ํ•จ์ˆ˜(๋˜๋Š” ๋ฉ”์†Œ๋“œ)์˜ ๊ธธ์ด๊ฐ€ 15๋ผ์ธ์„ ๋„˜์–ด๊ฐ€์ง€ ์•Š๋„๋ก ๊ตฌํ˜„ํ•œ๋‹ค.

๐Ÿ“ ๊ณผ์ œ ์ง„ํ–‰ ์š”๊ตฌ์‚ฌํ•ญ

  • ๋ฏธ์…˜ ์ €์žฅ์†Œ๋ฅผ Fork/Cloneํ•ด ์‹œ์ž‘ํ•œ๋‹ค.
  • ๋ฃจํŠธ ๋””๋ ‰ํ† ๋ฆฌ์— docs/ ํด๋”๋ฅผ ๋งŒ๋“ค๊ณ , docs/README.md ํŒŒ์ผ์— ๊ตฌํ˜„ํ•  ๊ธฐ๋Šฅ ๋ชฉ๋ก์„ ๋จผ์ € ์ •๋ฆฌํ•œ ๋’ค ๊ตฌํ˜„์„ ์‹œ์ž‘ํ•œ๋‹ค.
  • Git์˜ ์ปค๋ฐ‹ ๋‹จ์œ„๋Š” ์•ž ๋‹จ๊ณ„์—์„œ docs/README.md์— ์ •๋ฆฌํ•œ ๊ธฐ๋Šฅ ๋ชฉ๋ก ๋‹จ์œ„๋กœ ์ถ”๊ฐ€ํ•œ๋‹ค.

โœ‰๏ธ ๋ฏธ์…˜ ์ œ์ถœ ๋ฐฉ๋ฒ•

  • ๋ฏธ์…˜ ๊ตฌํ˜„์„ ์™„๋ฃŒํ•œ ํ›„ GitHub์„ ํ†ตํ•ด ์ œ์ถœํ•œ๋‹ค.
  • ์ œ์ถœ ์ „ docs/README.md์— ๊ธฐ๋Šฅ ๋ชฉ๋ก์ด ์ž‘์„ฑ๋˜์–ด ์žˆ๋Š”์ง€ ํ™•์ธํ•œ๋‹ค.
  • ๋ชจ๋“  ํ…Œ์ŠคํŠธ๊ฐ€ ํ†ต๊ณผ๋œ ๊ฒƒ์„ ํ™•์ธํ•œ ํ›„ ์ œ์ถœํ•œ๋‹ค.

โœ”๏ธ ํ…Œ์ŠคํŠธ ์‹คํ–‰ ๊ฐ€์ด๋“œ

  • ํ…Œ์ŠคํŠธ ์‹คํ–‰์— ํ•„์š”ํ•œ ํŒจํ‚ค์ง€ ์„ค์น˜๋ฅผ ์œ„ํ•ด Node.js ๋ฒ„์ „ 20 ์ด์ƒ์ด ํ•„์š”ํ•˜๋‹ค.
  • ๋‹ค์Œ ๋ช…๋ น์–ด๋ฅผ ์ž…๋ ฅํ•ด ํŒจํ‚ค์ง€๋ฅผ ์„ค์น˜ํ•œ๋‹ค.
npm install
  • ์„ค์น˜๊ฐ€ ์™„๋ฃŒ๋˜์—ˆ๋‹ค๋ฉด, VSCode์˜ Go Live ๋ฒ„ํŠผ์„ ํด๋ฆญํ•ด ๋กœ์ปฌ ์„œ๋ฒ„(http://localhost:5500)๋ฅผ ๋จผ์ € ์‹คํ–‰ํ•œ๋‹ค.

  • ์„œ๋ฒ„๊ฐ€ ์‹คํ–‰๋œ ์ƒํƒœ์—์„œ ๋‹ค์Œ ๋ช…๋ น์–ด๋ฅผ ์ž…๋ ฅํ•ด ํ…Œ์ŠคํŠธ๋ฅผ ์‹คํ–‰ํ•œ๋‹ค.

npm run test
  • ๋ชจ๋“  ํ…Œ์ŠคํŠธ๊ฐ€ passํ•œ๋‹ค๋ฉด ์„ฑ๊ณต!

๐Ÿ”— ์ฐธ๊ณ  ๋งํฌ

About

๐ŸงŸโ€โ™‚๏ธ๊ทธ๋ฆฌ๋”” javascript ์ข€๋น„ ์•„ํฌ์นผ๋ฆฝ์Šค: ๊ฐ์—ผ์ž์˜ ์ด์ง€์„ ๋‹ค ๋ฏธ์…˜

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • JavaScript 66.5%
  • CSS 24.5%
  • HTML 9.0%