- ๋ฏธ์ ์ ๊ธฐ๋ฅ ์๊ตฌ์ฌํญ, ํ๋ก๊ทธ๋๋ฐ ์๊ตฌ์ฌํญ, ๊ณผ์ ์งํ ์๊ตฌ์ฌํญ ์ธ ๊ฐ์ง๋ก ๊ตฌ์ฑ๋์ด ์๋ค.
- ์ธ ๊ฐ์ ์๊ตฌ์ฌํญ์ ๋ง์กฑํ๊ธฐ ์ํด ๋ ธ๋ ฅํ๋ค. ํนํ ๊ธฐ๋ฅ์ ๊ตฌํํ๊ธฐ ์ ์ ๊ธฐ๋ฅ ๋ชฉ๋ก์ ๋ง๋ค๊ณ , ๊ธฐ๋ฅ ๋จ์๋ก ์ปค๋ฐ ํ๋ ๋ฐฉ์์ผ๋ก ์งํํ๋ค.
์์ธ ๋ถ๋ช ์ ๊ฐ์ผ ์ฌํ๊ฐ ๋ฐ์ํ๋ค. ๋์๋ ๋ด์๋์๊ณ , ๋น์ ์ ์ด๋ฏธ ์ข๋น์๊ฒ ๋ฌผ๋ ธ๋ค. ์์ ํ ์ข๋น๋ก ๋ณํ๊ธฐ ์ ์ ์น๋ฃ์ ๋ฅผ ์์ฑํ๊ฑฐ๋, 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 |
| ์ต์ข ์ฒด๋ ฅ | ์ข ๋ฃ ์์ ์ ์ฒด๋ ฅ |
| ์ต์ข ์๋ | ์ข ๋ฃ ์์ ์ ์๋ |
| ์ต์ข ๊ฐ์ผ๋ | ์ข ๋ฃ ์์ ์ ๊ฐ์ผ๋ |
| ์๋ฉ | ์ฌ๋ง / ์ข๋นํ / ์น๋ฃ ์ฑ๊ณต / ๊ตฌ์กฐ ์ฑ๊ณต / ์์กด ์ฑ๊ณต / ํฌ๊ธฐ |
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์ ์ ๋ฆฌํ ๊ธฐ๋ฅ ๋ชฉ๋ก ๋จ์๋ก ์ถ๊ฐํ๋ค.- AngularJS Commit Message Conventions์ ์ฐธ๊ณ ํด commit log๋ฅผ ๋จ๊ธด๋ค.
- ๋ฏธ์ ๊ตฌํ์ ์๋ฃํ ํ GitHub์ ํตํด ์ ์ถํ๋ค.
- ์ ์ถ ์
docs/README.md์ ๊ธฐ๋ฅ ๋ชฉ๋ก์ด ์์ฑ๋์ด ์๋์ง ํ์ธํ๋ค. - ๋ชจ๋ ํ ์คํธ๊ฐ ํต๊ณผ๋ ๊ฒ์ ํ์ธํ ํ ์ ์ถํ๋ค.
- ํ
์คํธ ์คํ์ ํ์ํ ํจํค์ง ์ค์น๋ฅผ ์ํด
Node.js๋ฒ์ 20์ด์์ด ํ์ํ๋ค. - ๋ค์ ๋ช ๋ น์ด๋ฅผ ์ ๋ ฅํด ํจํค์ง๋ฅผ ์ค์นํ๋ค.
npm install
-
์ค์น๊ฐ ์๋ฃ๋์๋ค๋ฉด, VSCode์ Go Live ๋ฒํผ์ ํด๋ฆญํด ๋ก์ปฌ ์๋ฒ(
http://localhost:5500)๋ฅผ ๋จผ์ ์คํํ๋ค. -
์๋ฒ๊ฐ ์คํ๋ ์ํ์์ ๋ค์ ๋ช ๋ น์ด๋ฅผ ์ ๋ ฅํด ํ ์คํธ๋ฅผ ์คํํ๋ค.
npm run test
- ๋ชจ๋ ํ ์คํธ๊ฐ passํ๋ค๋ฉด ์ฑ๊ณต!
- JavaScript module https://ko.javascript.info/modules-intro
- setTimeout https://developer.mozilla.org/ko/docs/Web/API/setTimeout

