ํ”„๋ŸฐํŠธ์—”๋“œ ๋„์žฅ: ๊ฐœ๋ฐœ์ž ๊ธฐ์ˆ ์„ ๊ต์œกํ•˜๋Š” ํ”„๋กœ์ ํŠธ(์‹ ๊ทœ 5๊ฐœ + ๊ธฐ์กด 43๊ฐœ)

1. ๋…ธ์…˜ ํด๋ก 

Notion ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์‚ฌ์šฉํ•˜๋ฉด ์›Œํฌํ”Œ๋กœ๋ฅผ ์ตœ์ ํ™”ํ•˜๊ณ , ๋ฌธ์„œ ์ž‘์—…์„ ํ•˜๊ณ , ์ž‘์—…์„ ์˜ˆ์•ฝํ•˜๊ณ , ์žฅ์น˜ ๊ฐ„ ๋ฐ์ดํ„ฐ๋ฅผ ๋™๊ธฐํ™”ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

ํ”„๋ŸฐํŠธ์—”๋“œ ๋„์žฅ: ๊ฐœ๋ฐœ์ž ๊ธฐ์ˆ ์„ ๊ต์œกํ•˜๋Š” ํ”„๋กœ์ ํŠธ(์‹ ๊ทœ 5๊ฐœ + ๊ธฐ์กด 43๊ฐœ)

www.notion.so

Notion ํด๋ก ์„ ์ƒ์„ฑํ•˜์—ฌ ๋ฐฐ์šธ ์ˆ˜ ์žˆ๋Š” ๋‚ด์šฉ:

  • HTML ๋“œ๋ž˜๊ทธ ์•ค ๋“œ๋กญ API. ์‚ฌ์šฉ์ž๋Š” "๋งˆ์šฐ์Šค๋กœ ์žก์„" ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋“œ๋ž˜๊ทธ ๊ฐ€๋Šฅ ์š”์†Œ๋ฅผ ๋ฐฐ์น˜ํ•˜๊ณ  ๋–จ์–ด ๋œจ๋ฆด ์ˆ˜์žˆ๋Š” ์กด.
  • ์ปดํ“จํ„ฐ์™€ ์Šค๋งˆํŠธํฐ ๊ฐ„์— ์‹ค์‹œ๊ฐ„์œผ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ๋™๊ธฐํ™”ํ•˜๋Š” ๋ฐฉ๋ฒ•.
  • ์‚ฌ์šฉ์ž๊ฐ€ ๋ ˆ์ฝ”๋“œ๋ฅผ ์ƒ์„ฑ, ์ฝ๊ธฐ, ์—…๋ฐ์ดํŠธ ๋ฐ ์‚ญ์ œํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•˜์—ฌ CRUD ๊ธฐ์ˆ ์„ ๊ต์œกํ•ฉ๋‹ˆ๋‹ค.

ํ”„๋ŸฐํŠธ์—”๋“œ ๋„์žฅ: ๊ฐœ๋ฐœ์ž ๊ธฐ์ˆ ์„ ๊ต์œกํ•˜๋Š” ํ”„๋กœ์ ํŠธ(์‹ ๊ทœ 5๊ฐœ + ๊ธฐ์กด 43๊ฐœ)

์ด ๊ธฐ์‚ฌ๋Š” EDISON Software์˜ ์ง€์›์œผ๋กœ ๋ฒˆ์—ญ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋ฐ ์›น์‚ฌ์ดํŠธ ๊ฐœ๋ฐœ๊ณผ ์Šคํƒ€ํŠธ์—…์— ํˆฌ์žํ•œ๋‹ค.

2. Repl.it ํด๋ก 

Repl.it์€ ์‹ค์‹œ๊ฐ„ ๊ณต๋™ ์ฝ”๋“œ ํŽธ์ง‘์„ ์œ„ํ•œ ๋„๊ตฌ์ž…๋‹ˆ๋‹ค. JavaScript, Python, Go ๋“ฑ ์—ฌ๋Ÿฌ ์–ธ์–ด๋ฅผ ์„ ํƒํ•˜๊ณ  ๋ธŒ๋ผ์šฐ์ €์—์„œ ์ง์ ‘ ์ฝ”๋“œ๋ฅผ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋น ๋ฅธ ๋ฐ๋ชจ ๋ฐ ์ฝ”๋“œ ์ธํ„ฐ๋ทฐ์— ๋งค์šฐ ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค.

ํ”„๋ŸฐํŠธ์—”๋“œ ๋„์žฅ: ๊ฐœ๋ฐœ์ž ๊ธฐ์ˆ ์„ ๊ต์œกํ•˜๋Š” ํ”„๋กœ์ ํŠธ(์‹ ๊ทœ 5๊ฐœ + ๊ธฐ์กด 43๊ฐœ)

๋ฐ˜๋ณต

Repl.it ๋ณต์ œ๋ณธ์„ ์ƒ์„ฑํ•˜์—ฌ ๋ฐฐ์šธ ๋‚ด์šฉ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

  • ๋ธŒ๋ผ์šฐ์ €(ํด๋ผ์ด์–ธํŠธ ์ธก)์—์„œ ์ฝ”๋“œ(์„œ๋ฒ„ ์ธก)๋ฅผ ์‹คํ–‰ํ•˜๊ณ  ์‹คํ–‰ํ•˜๋Š” ๋ฐฉ๋ฒ•์ž…๋‹ˆ๋‹ค.
  • ์ž…๋ ฅ ๋ฐ์ดํ„ฐ(์†Œ์Šค ์ฝ”๋“œ)๋ฅผ ์ฝ๊ณ  ์‹คํ–‰ ๊ฒฐ๊ณผ๋ฅผ ํ‘œ์‹œํ•ฉ๋‹ˆ๋‹ค.
  • ์›น์—์„œ ํŒŒ์ผ๊ณผ ํด๋”๋ฅผ ์ƒ์„ฑํ•˜๊ณ  ๊ฒฐ๊ณผ๋ฅผ ์ €์žฅํ•˜๋Š” ๋ฐฉ๋ฒ•.
  • ์ฝ”๋“œ ๊ตฌ๋ฌธ์„ ๊ฐ•์กฐํ•˜๋Š” ๋ฐฉ๋ฒ•

3. Google ํฌํ†  ๋ณต์ œ

Google ํฌํ† ๋Š” ์‚ฌ์ง„์„ ์ €์žฅํ•˜๊ณ  ๊ณต์œ ํ•˜๋Š” ์„œ๋น„์Šค์ž…๋‹ˆ๋‹ค.
๋ชจ๋“  ์ตœ์‹  ์‚ฌ์ง„ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์—…๋กœ๋“œ, ์ž๋ฅด๊ธฐ ๋“ฑ์˜ ๊ธฐ๋ณธ ๊ธฐ๋Šฅ์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์‚ฌ๋žŒ๋“ค์€ ์ž์‹ ๋งŒ์˜ ์•„๋ฐ”ํƒ€๋ฅผ ๋งŒ๋“ค๊ณ  ๊ณ ์–‘์ด ์‚ฌ์ง„์„ ๊ณต์œ ํ•˜๊ธฐ๋ฅผ ์›ํ•˜๋ฏ€๋กœ ์ด๋ฏธ์ง€ ์ž‘์—…์„ ํ•  ์ˆ˜ ์žˆ์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

ํ”„๋ŸฐํŠธ์—”๋“œ ๋„์žฅ: ๊ฐœ๋ฐœ์ž ๊ธฐ์ˆ ์„ ๊ต์œกํ•˜๋Š” ํ”„๋กœ์ ํŠธ(์‹ ๊ทœ 5๊ฐœ + ๊ธฐ์กด 43๊ฐœ)

www.google.com/photos/about

Google ํฌํ†  ํด๋ก ์„ ๋งŒ๋“ค์–ด์„œ ๋ฐฐ์šธ ์ˆ˜ ์žˆ๋Š” ๋‚ด์šฉ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

  • ํœด๋Œ€ํฐ, ํƒœ๋ธ”๋ฆฟ, ๋…ธํŠธ๋ถ์€ ๋ฌผ๋ก  ๋Œ€ํ˜• TV ํ™”๋ฉด์—์„œ๋„ ๋ฐ˜์‘ํ˜• ์ด๋ฏธ์ง€๋ฅผ ๋งŒ๋“œ๋Š” ๋ฐฉ๋ฒ•.
  • ์ด๋ฏธ์ง€ ์—…๋กœ๋“œ, ํŠนํžˆ ๋Œ€์šฉ๋Ÿ‰ ์ด๋ฏธ์ง€(>1MB) ๋ฐ ๋Œ€๋Ÿ‰ ์—…๋กœ๋“œ๋ฅผ ์ฒ˜๋ฆฌํ•˜๋Š” ๋ฐฉ๋ฒ•.
  • ์ด๋ฏธ์ง€ ํŒŒ์ผ์„ ์ฒ˜๋ฆฌํ•˜๊ณ , ์ธ๋„ค์ผ์šฉ์œผ๋กœ ๋˜๋Š” ๊ฐค๋Ÿฌ๋ฆฌ๋ฅผ ์—ด ๋•Œ ์‚ฌ์ง„์„ ์ž๋ฅด๊ณ  ํฌ๊ธฐ๋ฅผ ์กฐ์ •ํ•ฉ๋‹ˆ๋‹ค.
  • ๋ณด๋„ˆ์Šค : ํด๋ผ์šฐ๋“œ๋‚˜ ๋กœ์ปฌ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ์ด๋ฏธ์ง€๋ฅผ ์ €์žฅํ•˜๋Š” ๋ฐฉ๋ฒ•.

4. ๊ธฐํ”„์Šคํ‚ค ํด๋ก 

๊ธฐํ”„์Šคํ‚ค ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋น„๋””์˜ค๋ฅผ GIF๋กœ ๋ณ€ํ™˜ํ•ฉ๋‹ˆ๋‹ค.pngQuant ํšจ์œจ์ ์ธ ํฌ๋กœ์Šค ํ”„๋ ˆ์ž„ ํŒ”๋ ˆํŠธ ๋ฐ ์‹œ๊ฐ„์  ์•คํ‹ฐ์•จ๋ฆฌ์–ด์‹ฑ์„ ์œ„ํ•œ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ๋Š” ํ”„๋ ˆ์ž„๋‹น ์ˆ˜์ฒœ ๊ฐœ์˜ ๊ฝƒ์ด ํฌํ•จ๋œ GIF์ž…๋‹ˆ๋‹ค.

ํ”„๋ŸฐํŠธ์—”๋“œ ๋„์žฅ: ๊ฐœ๋ฐœ์ž ๊ธฐ์ˆ ์„ ๊ต์œกํ•˜๋Š” ํ”„๋กœ์ ํŠธ(์‹ ๊ทœ 5๊ฐœ + ๊ธฐ์กด 43๊ฐœ)

gif.์Šคํ‚ค

Gifski ํด๋ก ์„ ์ƒ์„ฑํ•˜์—ฌ ๋ฐฐ์šธ ๋‚ด์šฉ:

  • ๋น„๋””์˜ค ํŒŒ์ผ(.mp4์—์„œ .gif๋กœ)์„ ๋ณ€ํ™˜ํ•˜๋Š” ๋ฐฉ๋ฒ•.
  • ๋“œ๋ž˜๊ทธ ์•ค ๋“œ๋กญ HTML API๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•.
  • ์ด๋ฏธ์ง€ ์ตœ์ ํ™” ๋ฐ ์ฒ˜๋ฆฌ ์ž‘๋™ ๋ฐฉ์‹.

์ฐธ๊ณ  : Gifsky๋Š” ์˜คํ”ˆ ์†Œ์Šค ํ”„๋กœ์ ํŠธ์ž…๋‹ˆ๋‹ค ๊ทธ๋ฆฌ๊ณ  GitHub์— ์žˆ์Šต๋‹ˆ๋‹ค!

5. ์•”ํ˜ธํ™”ํ ํ™˜์œจ ๋ชจ๋‹ˆํ„ฐ๋ง

ํ”„๋ŸฐํŠธ์—”๋“œ ๋„์žฅ: ๊ฐœ๋ฐœ์ž ๊ธฐ์ˆ ์„ ๊ต์œกํ•˜๋Š” ํ”„๋กœ์ ํŠธ(์‹ ๊ทœ 5๊ฐœ + ๊ธฐ์กด 43๊ฐœ)

React Native ์•”ํ˜ธํ™”ํ ์ถ”์ ๊ธฐ

ํ™˜์œจ ์ถ”์ ๊ธฐ๋ฅผ ๋งŒ๋“ค์–ด์„œ ๋ฐฐ์šธ ๋‚ด์šฉ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

  • API๋กœ ์ž‘์—…ํ•˜๊ณ  API์—์„œ ์›๊ฒฉ์œผ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ์ˆ˜์‹ ํ•˜๋Š” ๋ฐฉ๋ฒ•.
  • ๋ฐ์ดํ„ฐ๋ฅผ ๋ชฉ๋ก์œผ๋กœ ํ‘œ์‹œํ•˜๋Š” ๋ฐฉ๋ฒ•.
  • ๋ณด๋„ˆ์Šค : ๊ด€์‹ฌ์ด ์žˆ์œผ์‹œ๋ฉด ์ œ๊ฐ€ ์ตœ๊ทผ์— ๊ธ€์„ ์ผ์Šต๋‹ˆ๋‹ค. ๊ฐ€๊ฒฉ ์ถ”์ ๊ธฐ ์ƒ์„ฑ์— ๋Œ€ํ•œ ํŠœํ† ๋ฆฌ์–ผ React Native๋ฅผ ์‚ฌ์šฉํ•œ ์•”ํ˜ธํ™”ํ์šฉ.

์ฐธ๊ณ  : ์—ฌ๊ธฐ์— GitHub ์˜ˆ์ œ ์ €์žฅ์†Œ.

์ด์ „ ์ถœํŒ๋ฌผ์—์„œ ํ”„๋กœ์ ํŠธ๋ฅผ ์„ ํƒํ–ˆ์Šต๋‹ˆ๋‹ค.

์ธต

ํ”„๋ŸฐํŠธ์—”๋“œ ๋„์žฅ: ๊ฐœ๋ฐœ์ž ๊ธฐ์ˆ ์„ ๊ต์œกํ•˜๋Š” ํ”„๋กœ์ ํŠธ(์‹ ๊ทœ 5๊ฐœ + ๊ธฐ์กด 43๊ฐœ)

www.reddit.com/r/layer

๋ ˆ์ด์–ด(Layer)๋Š” ๋ˆ„๊ตฌ๋‚˜ ๊ณต์œ ํ•˜๋Š” '๋ณด๋“œ'์— ํ”ฝ์…€์„ ๊ทธ๋ฆด ์ˆ˜ ์žˆ๋Š” ์ปค๋ฎค๋‹ˆํ‹ฐ์ž…๋‹ˆ๋‹ค. ์›๋ž˜ ์•„์ด๋””์–ด๋Š” Reddit์—์„œ ํƒ„์ƒํ–ˆ์Šต๋‹ˆ๋‹ค. r/Layer ์ปค๋ฎค๋‹ˆํ‹ฐ๋Š” ๋ชจ๋“  ์‚ฌ๋žŒ์ด ์ฐฝ์ž‘์ž๊ฐ€ ๋˜์–ด ๊ณตํ†ต์˜ ๋Œ€์˜์— ๊ธฐ์—ฌํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ๊ณต์œ  ์ฐฝ์˜์„ฑ์— ๋Œ€ํ•œ ์€์œ ์ž…๋‹ˆ๋‹ค.

๋‚˜๋งŒ์˜ ๋ ˆ์ด์–ด ํ”„๋กœ์ ํŠธ๋ฅผ ๋งŒ๋“ค ๋•Œ ๋ฐฐ์šฐ๊ฒŒ ๋˜๋Š” ๋‚ด์šฉ:

  • JavaScript ์บ”๋ฒ„์Šค ์ž‘๋™ ๋ฐฉ์‹ ์บ”๋ฒ„์Šค๋ฅผ ์ž‘๋™ํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์•„๋Š” ๊ฒƒ์€ ๋งŽ์€ ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์—์„œ ์ค‘์š”ํ•œ ๊ธฐ์ˆ ์ž…๋‹ˆ๋‹ค.
  • ์‚ฌ์šฉ์ž ๊ถŒํ•œ์„ ์กฐ์ •ํ•˜๋Š” ๋ฐฉ๋ฒ•. ๊ฐ ์‚ฌ์šฉ์ž๋Š” ๋กœ๊ทธ์ธํ•˜์ง€ ์•Š๊ณ ๋„ 15๋ถ„๋งˆ๋‹ค ํ•œ ํ”ฝ์…€์„ ๊ทธ๋ฆด ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ์ฟ ํ‚ค ์„ธ์…˜์„ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค.

Squoosh

ํ”„๋ŸฐํŠธ์—”๋“œ ๋„์žฅ: ๊ฐœ๋ฐœ์ž ๊ธฐ์ˆ ์„ ๊ต์œกํ•˜๋Š” ํ”„๋กœ์ ํŠธ(์‹ ๊ทœ 5๊ฐœ + ๊ธฐ์กด 43๊ฐœ)
squoosh.app

Squoosh๋Š” ๋‹ค์–‘ํ•œ ๊ณ ๊ธ‰ ์˜ต์…˜์„ ๊ฐ–์ถ˜ ์ด๋ฏธ์ง€ ์••์ถ• ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ž…๋‹ˆ๋‹ค.

GIF 20MBํ”„๋ŸฐํŠธ์—”๋“œ ๋„์žฅ: ๊ฐœ๋ฐœ์ž ๊ธฐ์ˆ ์„ ๊ต์œกํ•˜๋Š” ํ”„๋กœ์ ํŠธ(์‹ ๊ทœ 5๊ฐœ + ๊ธฐ์กด 43๊ฐœ)

๋‚˜๋งŒ์˜ Squoosh ๋ฒ„์ „์„ ๋งŒ๋“ค๋ฉด ๋‹ค์Œ ๋‚ด์šฉ์„ ๋ฐฐ์šธ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  • ์ด๋ฏธ์ง€ ํฌ๊ธฐ ์ž‘์—… ๋ฐฉ๋ฒ•
  • Drag'n'Drop API์˜ ๊ธฐ๋ณธ ์‚ฌํ•ญ ์•Œ์•„๋ณด๊ธฐ
  • API ๋ฐ ์ด๋ฒคํŠธ ๋ฆฌ์Šค๋„ˆ์˜ ์ž‘๋™ ๋ฐฉ์‹ ์ดํ•ด
  • ํŒŒ์ผ์„ ์—…๋กœ๋“œํ•˜๊ณ  ๋‚ด๋ณด๋‚ด๋Š” ๋ฐฉ๋ฒ•

์ฐธ๊ณ  : ์ด๋ฏธ์ง€ ์••์ถ•๊ธฐ๋Š” ๋กœ์ปฌ์ž…๋‹ˆ๋‹ค. ์ถ”๊ฐ€ ๋ฐ์ดํ„ฐ๋ฅผ ์„œ๋ฒ„์— ๋ณด๋‚ผ ํ•„์š”๋Š” ์—†์Šต๋‹ˆ๋‹ค. ์••์ถ•๊ธฐ๋ฅผ ์ง‘์— ๋‘˜ ์ˆ˜๋„ ์žˆ๊ณ  ์„œ๋ฒ„์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค.

๊ณ„์‚ฐ๊ธฐ

์–ด์„œ ํ•ด๋ด์š”? ์ง„์ง€ํ•˜๊ฒŒ? ๊ณ„์‚ฐ์ž? ๋„ค, ์ •ํ™•ํžˆ๋Š” ๊ณ„์‚ฐ๊ธฐ์ž…๋‹ˆ๋‹ค. ์ˆ˜ํ•™ ์—ฐ์‚ฐ์˜ ๊ธฐ๋ณธ๊ณผ ํ•จ๊ป˜ ์ž‘๋™ํ•˜๋Š” ๋ฐฉ์‹์„ ์ดํ•ดํ•˜๋Š” ๊ฒƒ์€ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๋‹จ์ˆœํ™”ํ•˜๋Š” ๋ฐ ์ค‘์š”ํ•œ ๊ธฐ์ˆ ์ž…๋‹ˆ๋‹ค. ์กฐ๋งŒ๊ฐ„ ์ˆซ์ž๋ฅผ ๋‹ค๋ฃจ์–ด์•ผ ํ•˜๋ฉฐ ๋น ๋ฅผ์ˆ˜๋ก ์ข‹์Šต๋‹ˆ๋‹ค.

ํ”„๋ŸฐํŠธ์—”๋“œ ๋„์žฅ: ๊ฐœ๋ฐœ์ž ๊ธฐ์ˆ ์„ ๊ต์œกํ•˜๋Š” ํ”„๋กœ์ ํŠธ(์‹ ๊ทœ 5๊ฐœ + ๊ธฐ์กด 43๊ฐœ)
jarodburchill.github.io/CalculatorReactApp

๋‚˜๋งŒ์˜ ๊ณ„์‚ฐ๊ธฐ๋ฅผ ๋งŒ๋“ค๋ฉด ๋‹ค์Œ ๋‚ด์šฉ์„ ๋ฐฐ์šธ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

  • ์ˆซ์ž ๋ฐ ์ˆ˜ํ•™ ์—ฐ์‚ฐ ์ž‘์—…
  • ์ด๋ฒคํŠธ ๋ฆฌ์Šค๋„ˆ API ์—ฐ์Šต
  • ์š”์†Œ๋ฅผ ์ •๋ ฌํ•˜๊ณ  ์Šคํƒ€์ผ์„ ์ดํ•ดํ•˜๋Š” ๋ฐฉ๋ฒ•

ํฌ๋กค๋Ÿฌ(๊ฒ€์ƒ‰ ์—”์ง„)

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

ํ”„๋ŸฐํŠธ์—”๋“œ ๋„์žฅ: ๊ฐœ๋ฐœ์ž ๊ธฐ์ˆ ์„ ๊ต์œกํ•˜๋Š” ํ”„๋กœ์ ํŠธ(์‹ ๊ทœ 5๊ฐœ + ๊ธฐ์กด 43๊ฐœ)
๊ตฌ๊ธ€ ๊ฒ€์ƒ‰ ์—”์ง„

์ž์‹ ๋งŒ์˜ ๊ฒ€์ƒ‰ ์—”์ง„์„ ๋งŒ๋“ค์–ด์„œ ๋ฐฐ์šธ ์ˆ˜ ์žˆ๋Š” ๋‚ด์šฉ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

  • ํฌ๋กค๋Ÿฌ ์ž‘๋™ ๋ฐฉ์‹
  • ์‚ฌ์ดํŠธ๋ฅผ ์ƒ‰์ธํ™”ํ•˜๋Š” ๋ฐฉ๋ฒ•๊ณผ ํ‰์  ๋ฐ ํ‰ํŒ์„ ๊ธฐ์ค€์œผ๋กœ ์ˆœ์œ„๋ฅผ ๋งค๊ธฐ๋Š” ๋ฐฉ๋ฒ•
  • ์ƒ‰์ธํ™”๋œ ์‚ฌ์ดํŠธ๋ฅผ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ์ €์žฅํ•˜๋Š” ๋ฐฉ๋ฒ• ๋ฐ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ž‘์—… ๋ฐฉ๋ฒ•

๋ฎค์ง ํ”Œ๋ ˆ์ด์–ด(์Šคํฌํ‹ฐํŒŒ์ด, ์• ํ”Œ ๋ฎค์ง)

๋ชจ๋‘๊ฐ€ ์Œ์•…์„ ๋“ฃ์Šต๋‹ˆ๋‹ค. ์Œ์•…์€ ์šฐ๋ฆฌ ์‚ถ์˜ ํ•„์ˆ˜์ ์ธ ๋ถ€๋ถ„์ž…๋‹ˆ๋‹ค. ํ˜„๋Œ€ ์Œ์•… ์ŠคํŠธ๋ฆฌ๋ฐ ํ”Œ๋žซํผ์˜ ๊ธฐ๋ณธ ๋ฉ”์ปค๋‹ˆ์ฆ˜์ด ์–ด๋–ป๊ฒŒ ์ž‘๋™ํ•˜๋Š”์ง€ ๋” ์ž˜ ์ดํ•ดํ•˜๊ธฐ ์œ„ํ•ด ์Œ์•… ํ”Œ๋ ˆ์ด์–ด๋ฅผ ๋งŒ๋“ค์–ด ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

ํ”„๋ŸฐํŠธ์—”๋“œ ๋„์žฅ: ๊ฐœ๋ฐœ์ž ๊ธฐ์ˆ ์„ ๊ต์œกํ•˜๋Š” ํ”„๋กœ์ ํŠธ(์‹ ๊ทœ 5๊ฐœ + ๊ธฐ์กด 43๊ฐœ)
์Šคํฌํ‹ฐ ํŒŒ์ด

๋‚˜๋งŒ์˜ ์Œ์•… ์ŠคํŠธ๋ฆฌ๋ฐ ํ”Œ๋žซํผ์„ ๋งŒ๋“ค์–ด์„œ ๋ฐฐ์šธ ์ ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

  • API๋กœ ์ž‘์—…ํ•˜๋Š” ๋ฐฉ๋ฒ•. Spotify ๋˜๋Š” Apple Music์˜ API ์‚ฌ์šฉ
  • ๋‹ค์Œ/์ด์ „ ํŠธ๋ž™ ์žฌ์ƒ, ์ผ์‹œ ์ •์ง€, ๋˜๊ฐ๊ธฐ ๋ฐฉ๋ฒ•
  • ๋ณผ๋ฅจ์„ ๋ณ€๊ฒฝํ•˜๋Š” ๋ฐฉ๋ฒ•
  • ์‚ฌ์šฉ์ž ๋ผ์šฐํŒ… ๋ฐ ๋ธŒ๋ผ์šฐ์ € ๊ธฐ๋ก์„ ๊ด€๋ฆฌํ•˜๋Š” ๋ฐฉ๋ฒ•

React๋ฅผ ์‚ฌ์šฉํ•œ ์˜ํ™” ๊ฒ€์ƒ‰ ์•ฑ(ํ›„ํฌ ํฌํ•จ)

๊ฐ€์žฅ ๋จผ์ € ์‹œ์ž‘ํ•  ์ˆ˜ ์žˆ๋Š” ์ผ์€ React๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์˜ํ™” ๊ฒ€์ƒ‰ ์•ฑ์„ ๋งŒ๋“œ๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์•„๋ž˜๋Š” ์ตœ์ข… ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ๋ชจ์Šต์„ ๋ณด์—ฌ์ฃผ๋Š” ์ด๋ฏธ์ง€์ž…๋‹ˆ๋‹ค.

ํ”„๋ŸฐํŠธ์—”๋“œ ๋„์žฅ: ๊ฐœ๋ฐœ์ž ๊ธฐ์ˆ ์„ ๊ต์œกํ•˜๋Š” ํ”„๋กœ์ ํŠธ(์‹ ๊ทœ 5๊ฐœ + ๊ธฐ์กด 43๊ฐœ)

๋ฌด์—‡์„ ๋ฐฐ์šธ ๊ฒƒ์ธ๊ฐ€
์ด ์•ฑ์„ ๊ตฌ์ถ•ํ•˜๋ฉด ์ƒ๋Œ€์ ์œผ๋กœ ์ƒˆ๋กœ์šด Hooks API๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ React ๊ธฐ์ˆ ์„ ํ–ฅ์ƒ์‹œํ‚ฌ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ์ œ ํ”„๋กœ์ ํŠธ์—์„œ๋Š” React ๊ตฌ์„ฑ ์š”์†Œ, ๋งŽ์€ ํ›„ํฌ, ์™ธ๋ถ€ API ๋ฐ ์ผ๋ถ€ CSS ์Šคํƒ€์ผ์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

๊ธฐ์ˆ  ์Šคํƒ ๋ฐ ๊ธฐ๋Šฅ

  • ํ›„ํฌ๋กœ ๋ฐ˜์‘
  • ๋ฐ˜์‘ ํ˜• ์•ฑ ๋งŒ๋“ค๊ธฐ
  • JSX
  • CSS

ํด๋ž˜์Šค๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š๊ณ ๋„ ์ด ํ”„๋กœ์ ํŠธ๋Š” ๊ธฐ๋Šฅ์  React์— ๋Œ€ํ•œ ์™„๋ฒฝํ•œ ์ง„์ž…์ ์„ ์ œ๊ณตํ•˜๋ฉฐ 2020๋…„์— ํ™•์‹คํžˆ ๋„์›€์ด ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋‹น์‹ ์€ ์ฐพ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค ์˜ˆ์ œ ํ”„๋กœ์ ํŠธ๋Š” ์—ฌ๊ธฐ. ์ง€์นจ์„ ๋”ฐ๋ฅด๊ฑฐ๋‚˜ ์ง์ ‘ ๋งŒ๋“œ์‹ญ์‹œ์˜ค.

Vue์™€ ์ฑ„ํŒ… ์•ฑ

๋˜ ๋‹ค๋ฅธ ํ›Œ๋ฅญํ•œ ํ”„๋กœ์ ํŠธ๋Š” ์ œ๊ฐ€ ๊ฐ€์žฅ ์ข‹์•„ํ•˜๋Š” JavaScript ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์ธ VueJS๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ฑ„ํŒ… ์•ฑ์„ ๋งŒ๋“œ๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์‘์šฉ ํ”„๋กœ๊ทธ๋žจ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

ํ”„๋ŸฐํŠธ์—”๋“œ ๋„์žฅ: ๊ฐœ๋ฐœ์ž ๊ธฐ์ˆ ์„ ๊ต์œกํ•˜๋Š” ํ”„๋กœ์ ํŠธ(์‹ ๊ทœ 5๊ฐœ + ๊ธฐ์กด 43๊ฐœ)

๋ฌด์—‡์„ ๋ฐฐ์šธ ๊ฒƒ์ธ๊ฐ€
์ด ํŠœํ† ๋ฆฌ์–ผ์—์„œ๋Š” ๊ตฌ์„ฑ ์š”์†Œ ์ƒ์„ฑ, ์ƒํƒœ ์ฒ˜๋ฆฌ, ๊ฒฝ๋กœ ์ƒ์„ฑ, ํƒ€์‚ฌ ์„œ๋น„์Šค ์—ฐ๊ฒฐ, ์ธ์ฆ ์ฒ˜๋ฆฌ ๋“ฑ Vue ์•ฑ์„ ์ฒ˜์Œ๋ถ€ํ„ฐ ๋งŒ๋“œ๋Š” ๋ฐฉ๋ฒ•์„ ๋ฐฐ์›๋‹ˆ๋‹ค.

๊ธฐ์ˆ  ์Šคํƒ ๋ฐ ๊ธฐ๋Šฅ

  • ๋ทฐ
  • ๋ทฐ์—‘์Šค
  • Vue ๋ผ์šฐํ„ฐ
  • ๋ทฐ CLI
  • ๋ฏธ๋Š” ์‚ฌ๋žŒ
  • CSS

์ด๋Š” Vue๋ฅผ ์‹œ์ž‘ํ•˜๊ฑฐ๋‚˜ ๊ธฐ์กด ๊ธฐ์ˆ ์„ ํ–ฅ์ƒํ•˜์—ฌ 2020๋…„ ๊ฐœ๋ฐœ์— ์ฐฉ์ˆ˜ํ•  ์ˆ˜ ์žˆ๋Š” ์ •๋ง ํ›Œ๋ฅญํ•œ ํ”„๋กœ์ ํŠธ์ž…๋‹ˆ๋‹ค. ๋‹น์‹ ์€ ์ฐพ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค ์—ฌ๊ธฐ ํŠœํ† ๋ฆฌ์–ผ.

Angular 8์„ ์‚ฌ์šฉํ•œ ์•„๋ฆ„๋‹ค์šด ๋‚ ์”จ ์•ฑ

์ด ์˜ˆ๋Š” Angular 8์„ ์‚ฌ์šฉํ•˜์—ฌ ์•„๋ฆ„๋‹ค์šด ๋‚ ์”จ ์•ฑ์„ ๋งŒ๋“œ๋Š” ๋ฐ ๋„์›€์ด ๋ฉ๋‹ˆ๋‹ค.

ํ”„๋ŸฐํŠธ์—”๋“œ ๋„์žฅ: ๊ฐœ๋ฐœ์ž ๊ธฐ์ˆ ์„ ๊ต์œกํ•˜๋Š” ํ”„๋กœ์ ํŠธ(์‹ ๊ทœ 5๊ฐœ + ๊ธฐ์กด 43๊ฐœ)

๋ฌด์—‡์„ ๋ฐฐ์šธ ๊ฒƒ์ธ๊ฐ€
์ด ํ”„๋กœ์ ํŠธ๋Š” ์„ค๊ณ„๋ถ€ํ„ฐ ๊ฐœ๋ฐœ, ๋ฐฐํฌ ๊ฐ€๋Šฅํ•œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์— ์ด๋ฅด๊ธฐ๊นŒ์ง€ ์ฒ˜์Œ๋ถ€ํ„ฐ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๊ตฌ์ถ•ํ•˜๋Š” ๋ฐ ํ•„์š”ํ•œ ๊ท€์ค‘ํ•œ ๊ธฐ์ˆ ์„ ๊ฐ€๋ฅด์ณ์ค๋‹ˆ๋‹ค.

๊ธฐ์ˆ  ์Šคํƒ ๋ฐ ๊ธฐ๋Šฅ

  • ๊ฐ๋„ 8
  • ์ค‘ํฌ ๊ธฐ์ง€
  • ์„œ๋ฒ„ ์ธก ๋ Œ๋”๋ง
  • ๊ทธ๋ฆฌ๋“œ์™€ Flexbox๊ฐ€ ํฌํ•จ๋œ CSS
  • ๋ชจ๋ฐ”์ผ ์นœํ™”์ ์ด๊ณ  ์ ์‘์„ฑ
  • ๋‹คํฌ ๋ชจ๋“œ
  • ํฌ๋ผ์‹œ๋ฐ” ์ธํ„ฐํŽ˜์ด์Šค

์ด ํฌ๊ด„์ ์ธ ํ”„๋กœ์ ํŠธ์—์„œ ์ œ๊ฐ€ ์ •๋ง ์ข‹์•„ํ•˜๋Š” ์ ์€ ๊ณ ๋ฆฝ๋œ ์ƒํƒœ์—์„œ ๊ณต๋ถ€ํ•˜์ง€ ์•Š๋Š”๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋Œ€์‹  ์„ค๊ณ„๋ถ€ํ„ฐ ์ตœ์ข… ๋ฐฐํฌ๊นŒ์ง€ ์ „์ฒด ๊ฐœ๋ฐœ ํ”„๋กœ์„ธ์Šค๋ฅผ ๋ฐฐ์›๋‹ˆ๋‹ค.

Svelte๋ฅผ ์‚ฌ์šฉํ•œ To-Do ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜

Svelte๋Š” ์ตœ์†Œํ•œ React, Vue ๋ฐ Angular์™€ ์œ ์‚ฌํ•œ ๊ตฌ์„ฑ ์š”์†Œ ๊ธฐ๋ฐ˜ ์ ‘๊ทผ ๋ฐฉ์‹์˜ ์ƒˆ๋กœ์šด ์•„์ด์™€ ๊ฐ™์Šต๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ์ด๊ฒƒ์€ 2020๋…„ ๊ฐ€์žฅ ํ•ซํ•œ ์‹ ์ œํ’ˆ ์ค‘ ํ•˜๋‚˜์ž…๋‹ˆ๋‹ค.

To-Do ์•ฑ์€ ๋ฐ˜๋“œ์‹œ ๊ฐ€์žฅ ์ธ๊ธฐ ์žˆ๋Š” ์ฃผ์ œ๋Š” ์•„๋‹ˆ์ง€๋งŒ Svelte ๊ธฐ์ˆ ์„ ์—ฐ๋งˆํ•˜๋Š” ๋ฐ ์‹ค์ œ๋กœ ๋„์›€์ด ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋‹ค์Œ๊ณผ ๊ฐ™์ด ๋ณด์ผ ๊ฒƒ์ž…๋‹ˆ๋‹ค:

ํ”„๋ŸฐํŠธ์—”๋“œ ๋„์žฅ: ๊ฐœ๋ฐœ์ž ๊ธฐ์ˆ ์„ ๊ต์œกํ•˜๋Š” ํ”„๋กœ์ ํŠธ(์‹ ๊ทœ 5๊ฐœ + ๊ธฐ์กด 43๊ฐœ)

๋ฌด์—‡์„ ๋ฐฐ์šธ ๊ฒƒ์ธ๊ฐ€
์ด ํŠœํ† ๋ฆฌ์–ผ์—์„œ๋Š” ์ฒ˜์Œ๋ถ€ํ„ฐ ๋๊นŒ์ง€ Svelte 3๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๋งŒ๋“œ๋Š” ๋ฐฉ๋ฒ•์„ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค. ๊ตฌ์„ฑ์š”์†Œ, ์Šคํƒ€์ผ, ์ด๋ฒคํŠธ ํ•ธ๋“ค๋Ÿฌ๋ฅผ ์‚ฌ์šฉํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.

๊ธฐ์ˆ  ์Šคํƒ ๋ฐ ๊ธฐ๋Šฅ

  • ๋‚ ์”ฌํ•œ 3
  • ๊ตฌ์„ฑ ์š”์†Œ
  • CSS๋ฅผ ์‚ฌ์šฉํ•œ ์Šคํƒ€์ผ๋ง
  • ES 6 ๊ตฌ๋ฌธ

์ข‹์€ Svelte ์Šคํƒ€ํ„ฐ ํ”„๋กœ์ ํŠธ๊ฐ€ ๋งŽ์ง€ ์•Š์•„์„œ ์ฐพ์•˜์Šต๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ ์‹œ์ž‘ํ•˜๊ธฐ์— ์ข‹์€ ์˜ต์…˜์ž…๋‹ˆ๋‹ค.

Next.js๋ฅผ ์‚ฌ์šฉํ•œ ์ „์ž์ƒ๊ฑฐ๋ž˜ ์•ฑ

Next.js๋Š” ์ฆ‰์‹œ ์„œ๋ฒ„ ์ธก ๋ Œ๋”๋ง์„ ์ง€์›ํ•˜๋Š” React ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๊ตฌ์ถ•ํ•˜๋Š” ๋ฐ ๊ฐ€์žฅ ๋„๋ฆฌ ์‚ฌ์šฉ๋˜๋Š” ํ”„๋ ˆ์ž„์›Œํฌ์ž…๋‹ˆ๋‹ค.

์ด ํ”„๋กœ์ ํŠธ์—์„œ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์ „์ž ์ƒ๊ฑฐ๋ž˜ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๋งŒ๋“œ๋Š” ๋ฐฉ๋ฒ•์„ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค.

ํ”„๋ŸฐํŠธ์—”๋“œ ๋„์žฅ: ๊ฐœ๋ฐœ์ž ๊ธฐ์ˆ ์„ ๊ต์œกํ•˜๋Š” ํ”„๋กœ์ ํŠธ(์‹ ๊ทœ 5๊ฐœ + ๊ธฐ์กด 43๊ฐœ)

๋ฌด์—‡์„ ๋ฐฐ์šธ ๊ฒƒ์ธ๊ฐ€
์ด ํ”„๋กœ์ ํŠธ์—์„œ๋Š” Next.js๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๊ฐœ๋ฐœํ•˜๋Š” ๋ฐฉ๋ฒ•, ์ฆ‰ ์ƒˆ ํŽ˜์ด์ง€์™€ ๊ตฌ์„ฑ ์š”์†Œ๋ฅผ ๋งŒ๋“ค๊ณ , ๋ฐ์ดํ„ฐ๋ฅผ ์ถ”์ถœํ•˜๊ณ , Next ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ์Šคํƒ€์ผ์„ ์ง€์ •ํ•˜๊ณ  ๋ฐฐํฌํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ๋ฐฐ์›๋‹ˆ๋‹ค.

๊ธฐ์ˆ  ์Šคํƒ ๋ฐ ๊ธฐ๋Šฅ

  • ๋‹ค์Œ .js
  • ๊ตฌ์„ฑ ์š”์†Œ ๋ฐ ํŽ˜์ด์ง€
  • ๋ฐ์ดํ„ฐ ์ƒ˜ํ”Œ๋ง
  • ์Šคํƒ€์ผ๋ง
  • ํ”„๋กœ์ ํŠธ ๋ฐฐํฌ
  • SSR ๋ฐ SPA

์ƒˆ๋กœ์šด ๊ฒƒ์„ ๋ฐฐ์šฐ๊ธฐ ์œ„ํ•ด ์ „์ž์ƒ๊ฑฐ๋ž˜ ์•ฑ๊ณผ ๊ฐ™์€ ์‹ค์ œ ์‚ฌ๋ก€๋ฅผ ๊ฐ–๋Š” ๊ฒƒ์€ ํ•ญ์ƒ ์ข‹์€ ์ผ์ž…๋‹ˆ๋‹ค. ๋‹น์‹ ์€ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค ์—ฌ๊ธฐ์„œ ํŠœํ† ๋ฆฌ์–ผ์„ ์ฐพ์•„๋ณด์„ธ์š”.

Nuxt.js๋ฅผ ์‚ฌ์šฉํ•œ ๋ณธ๊ฒฉ์ ์ธ ๋‹ค๊ตญ์–ด ๋ธ”๋กœ๊ทธ

Nuxt.js๋Š” Vue์šฉ์ด๊ณ  Next.js๋Š” React์šฉ์ž…๋‹ˆ๋‹ค. ์„œ๋ฒ„ ์ธก ๋ Œ๋”๋ง๊ณผ ๋‹จ์ผ ํŽ˜์ด์ง€ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ์„ฑ๋Šฅ์„ ๊ฒฐํ•ฉํ•˜๊ธฐ ์œ„ํ•œ ํ›Œ๋ฅญํ•œ ํ”„๋ ˆ์ž„์›Œํฌ์ž…๋‹ˆ๋‹ค.
๋งŒ๋“ค ์ˆ˜ ์žˆ๋Š” ์ตœ์ข… ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

ํ”„๋ŸฐํŠธ์—”๋“œ ๋„์žฅ: ๊ฐœ๋ฐœ์ž ๊ธฐ์ˆ ์„ ๊ต์œกํ•˜๋Š” ํ”„๋กœ์ ํŠธ(์‹ ๊ทœ 5๊ฐœ + ๊ธฐ์กด 43๊ฐœ)

๋ฌด์—‡์„ ๋ฐฐ์šธ ๊ฒƒ์ธ๊ฐ€

์ด ์ƒ˜ํ”Œ ํ”„๋กœ์ ํŠธ์—์„œ๋Š” ์ดˆ๊ธฐ ์„ค์ •๋ถ€ํ„ฐ ์ตœ์ข… ๋ฐฐํฌ๊นŒ์ง€ Nuxt.js๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์™„์ „ํ•œ ์›น์‚ฌ์ดํŠธ๋ฅผ ๋งŒ๋“œ๋Š” ๋ฐฉ๋ฒ•์„ ๋ฐฐ์šฐ๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.

ํŽ˜์ด์ง€, ๊ตฌ์„ฑ ์š”์†Œ, SCSS๋ฅผ ์‚ฌ์šฉํ•œ ์Šคํƒ€์ผ๋ง ๋“ฑ Nuxt๊ฐ€ ์ œ๊ณตํ•˜๋Š” ๋ฉ‹์ง„ ๊ธฐ๋Šฅ์„ ๋งŽ์ด ํ™œ์šฉํ•ฉ๋‹ˆ๋‹ค.

๊ธฐ์ˆ  ์Šคํƒ ๋ฐ ๊ธฐ๋Šฅ

  • Nuxt.js
  • ๊ตฌ์„ฑ ์š”์†Œ ๋ฐ ํŽ˜์ด์ง€
  • ์Šคํ† ๋ฆฌ๋ธ”๋ก ๋ชจ๋“ˆ
  • ๋จน์žฅ์–ด
  • ์ƒํƒœ ๊ด€๋ฆฌ๋ฅผ ์œ„ํ•œ Vuex
  • ์Šคํƒ€์ผ๋ง์„ ์œ„ํ•œ SCSS
  • Nuxt ๋ฏธ๋“ค์›จ์–ด

์ •๋ง ๋ฉ‹์ง„ ํ”„๋กœ์ ํŠธ๋„ค์š”, ์—ฌ๊ธฐ์—๋Š” ๋งŽ์€ ํ›Œ๋ฅญํ•œ Nuxt.js ๊ธฐ๋Šฅ์ด ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ์ €๋Š” ๊ฐœ์ธ์ ์œผ๋กœ Nuxt๋กœ ์ž‘์—…ํ•˜๋Š” ๊ฒƒ์„ ์ข‹์•„ํ•ฉ๋‹ˆ๋‹ค. Nuxt๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ํ›Œ๋ฅญํ•œ Vue ๊ฐœ๋ฐœ์ž๊ฐ€ ๋  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค.

๊ฐœ์ธ ๋น„์™€ ํ•จ๊ป˜ํ•˜๋Š” ๋ธ”๋กœ๊ทธ

Gatsby๋Š” React์™€ GraphQL์„ ์‚ฌ์šฉํ•˜๋Š” ๋›ฐ์–ด๋‚œ ์ •์  ์‚ฌ์ดํŠธ ์ƒ์„ฑ๊ธฐ์ž…๋‹ˆ๋‹ค. ํ”„๋กœ์ ํŠธ์˜ ๊ฒฐ๊ณผ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

ํ”„๋ŸฐํŠธ์—”๋“œ ๋„์žฅ: ๊ฐœ๋ฐœ์ž ๊ธฐ์ˆ ์„ ๊ต์œกํ•˜๋Š” ํ”„๋กœ์ ํŠธ(์‹ ๊ทœ 5๊ฐœ + ๊ธฐ์กด 43๊ฐœ)

๋ฌด์—‡์„ ๋ฐฐ์šธ ๊ฒƒ์ธ๊ฐ€

์ด ํŠœํ† ๋ฆฌ์–ผ์—์„œ๋Š” Gatsby๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ React ๋ฐ GraphQL์„ ์‚ฌ์šฉํ•˜์—ฌ ์ž์‹ ๋งŒ์˜ ๊ธฐ์‚ฌ๋ฅผ ์ž‘์„ฑํ•˜๋Š” ๋ฐ ์‚ฌ์šฉํ•  ๋ธ”๋กœ๊ทธ๋ฅผ ๋งŒ๋“œ๋Š” ๋ฐฉ๋ฒ•์„ ๋ฐฐ์›๋‹ˆ๋‹ค.

๊ธฐ์ˆ  ์Šคํƒ ๋ฐ ๊ธฐ๋Šฅ

  • ๊ฐœ์ธ ๋น„
  • ๋ฐ˜์‘
  • GraphQL
  • ํ”Œ๋Ÿฌ๊ทธ์ธ ๋ฐ ํ…Œ๋งˆ
  • MDX/๋งˆํฌ๋‹ค์šด
  • ๋ถ€ํŠธ ์ŠคํŠธ๋žฉ CSS
  • ํ…œํ”Œ๋ฆฟ

๋ธ”๋กœ๊ทธ๋ฅผ ์‹œ์ž‘ํ•˜๊ณ  ์‹ถ์—ˆ๋˜ ์ ์ด ์žˆ๋‹ค๋ฉด, ์ด๊ฑด ์ข‹์€ ์˜ˆ์•ผ React์™€ GraphQL์„ ์‚ฌ์šฉํ•˜์—ฌ ๋งŒ๋“œ๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•ด ์•Œ์•„๋ณด์„ธ์š”.

WordPress๊ฐ€ ๋‚˜์œ ์„ ํƒ์ด๋ผ๊ณ  ๋งํ•˜๋Š” ๊ฒƒ์€ ์•„๋‹ˆ์ง€๋งŒ Gatsby๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด React๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๊ณ ์„ฑ๋Šฅ ์›น์‚ฌ์ดํŠธ๋ฅผ ๊ตฌ์ถ•ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Š” ๋†€๋ผ์šด ์กฐํ•ฉ์ž…๋‹ˆ๋‹ค.

Gridsome๊ณผ ํ•จ๊ป˜ํ•˜๋Š” ๋ธ”๋กœ๊ทธ

Vue์šฉ Gridsome... ์ข‹์Šต๋‹ˆ๋‹ค. Next/Nuxt์—์„œ๋Š” ์ด๋ฏธ ์ด ๊ธฐ๋Šฅ์„ ์‚ฌ์šฉํ–ˆ์Šต๋‹ˆ๋‹ค.
๊ทธ๋Ÿฌ๋‚˜ Gridsome๊ณผ Gatsby์˜ ๊ฒฝ์šฐ๋„ ๋งˆ์ฐฌ๊ฐ€์ง€์ž…๋‹ˆ๋‹ค. ๋‘˜ ๋‹ค GraphQL์„ ๋ฐ์ดํ„ฐ ๊ณ„์ธต์œผ๋กœ ์‚ฌ์šฉํ•˜์ง€๋งŒ Gridsome์€ VueJS๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ ๋˜ํ•œ ํ›Œ๋ฅญํ•œ ๋ธ”๋กœ๊ทธ๋ฅผ ๋งŒ๋“œ๋Š” ๋ฐ ๋„์›€์ด ๋˜๋Š” ๋†€๋ผ์šด ์ •์  ์‚ฌ์ดํŠธ ์ƒ์„ฑ๊ธฐ์ž…๋‹ˆ๋‹ค.

ํ”„๋ŸฐํŠธ์—”๋“œ ๋„์žฅ: ๊ฐœ๋ฐœ์ž ๊ธฐ์ˆ ์„ ๊ต์œกํ•˜๋Š” ํ”„๋กœ์ ํŠธ(์‹ ๊ทœ 5๊ฐœ + ๊ธฐ์กด 43๊ฐœ)

๋ฌด์—‡์„ ๋ฐฐ์šธ ๊ฒƒ์ธ๊ฐ€

์ด ํ”„๋กœ์ ํŠธ์—์„œ๋Š” Gridsome, GraphQL ๋ฐ Markdown์„ ์‹œ์ž‘ํ•˜๊ธฐ ์œ„ํ•ด ๊ฐ„๋‹จํ•œ ๋ธ”๋กœ๊ทธ๋ฅผ ๋งŒ๋“œ๋Š” ๋ฐฉ๋ฒ•์„ ์•Œ๋ ค์ค๋‹ˆ๋‹ค. ๋˜ํ•œ Netlify๋ฅผ ํ†ตํ•ด ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๋ฐฐํฌํ•˜๋Š” ๋ฐฉ๋ฒ•๋„ ๋‹ค๋ฃน๋‹ˆ๋‹ค.

๊ธฐ์ˆ  ์Šคํƒ ๋ฐ ๊ธฐ๋Šฅ

  • ๊ทธ๋ฆฌ์„ฌ
  • ๋ทฐ
  • GraphQL
  • ์ธํ•˜
  • ๋„คํ‹ฐ ํŒŒ์ด

์ด๊ฒƒ์€ ํ™•์‹คํžˆ ๊ฐ€์žฅ ํฌ๊ด„์ ์ธ ํŠœํ† ๋ฆฌ์–ผ์€ ์•„๋‹ˆ์ง€๋งŒ Gridsome์˜ ๊ธฐ๋ณธ ๊ฐœ๋…๊ณผ ๋งˆํฌ๋‹ค์šด์€ ์ข‹์€ ์ถœ๋ฐœ์ ์ด ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

Quasar๋ฅผ ์‚ฌ์šฉํ•˜๋Š” SoundCloud์™€ ์œ ์‚ฌํ•œ ์˜ค๋””์˜ค ํ”Œ๋ ˆ์ด์–ด

Quasar๋Š” ๋ชจ๋ฐ”์ผ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๋งŒ๋“œ๋Š” ๋ฐ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๋˜ ๋‹ค๋ฅธ Vue ํ”„๋ ˆ์ž„์›Œํฌ์ž…๋‹ˆ๋‹ค. ์ด ํ”„๋กœ์ ํŠธ์—์„œ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์˜ค๋””์˜ค ํ”Œ๋ ˆ์ด์–ด ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๋งŒ๋“ญ๋‹ˆ๋‹ค.

ํ”„๋ŸฐํŠธ์—”๋“œ ๋„์žฅ: ๊ฐœ๋ฐœ์ž ๊ธฐ์ˆ ์„ ๊ต์œกํ•˜๋Š” ํ”„๋กœ์ ํŠธ(์‹ ๊ทœ 5๊ฐœ + ๊ธฐ์กด 43๊ฐœ)

๋ฌด์—‡์„ ๋ฐฐ์šธ ๊ฒƒ์ธ๊ฐ€

๋‹ค๋ฅธ ํ”„๋กœ์ ํŠธ๋Š” ์ฃผ๋กœ ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์— ์ค‘์ ์„ ๋‘์ง€๋งŒ, ์ด ํ”„๋กœ์ ํŠธ์—์„œ๋Š” Vue ๋ฐ Quasar ํ”„๋ ˆ์ž„์›Œํฌ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ชจ๋ฐ”์ผ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๋งŒ๋“œ๋Š” ๋ฐฉ๋ฒ•์„ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค.
Android Studio/Xcode๊ฐ€ ๊ตฌ์„ฑ๋œ ์ƒํƒœ์—์„œ Cordova๊ฐ€ ์ด๋ฏธ ์‹คํ–‰ ์ค‘์ด์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋ ‡์ง€ ์•Š์€ ๊ฒฝ์šฐ ์„ค๋ช…์„œ์—๋Š” ๋ชจ๋“  ์„ค์ • ๋ฐฉ๋ฒ•์„ ๋ณด์—ฌ์ฃผ๋Š” Quasar ์›น์‚ฌ์ดํŠธ ๋งํฌ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

๊ธฐ์ˆ  ์Šคํƒ ๋ฐ ๊ธฐ๋Šฅ

  • ํ€˜์ด์‚ฌ
  • ๋ทฐ
  • ์ฝ”๋ฅด๋„๋ฐ”
  • ์›จ์ด๋ธŒ์„œํผ
  • UI ๊ตฌ์„ฑ์š”์†Œ

์†Œ๊ทœ๋ชจ ํ”„๋กœ์ ํŠธ, ๋ชจ๋ฐ”์ผ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์ œ์ž‘์„ ์œ„ํ•œ Quasar์˜ ๊ธฐ๋Šฅ์„ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค.

์‹ ์šฉ์นด๋“œ ์–‘์‹

๋ถ€๋“œ๋Ÿฝ๊ณ  ์ฆ๊ฑฐ์šด ๋งˆ์ดํฌ๋กœ ์ธํ„ฐ๋ž™์…˜์„ ๊ฐ–์ถ˜ ๋ฉ‹์ง„ ์‹ ์šฉ์นด๋“œ ๋ชจ์–‘์ž…๋‹ˆ๋‹ค. ์ˆซ์ž ํ˜•์‹ ์ง€์ •, ํ™•์ธ ๋ฐ ์ž๋™ ์นด๋“œ ์œ ํ˜• ๊ฐ์ง€๊ฐ€ ํฌํ•จ๋ฉ๋‹ˆ๋‹ค. Vue.js๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ๊ตฌ์ถ•๋˜์—ˆ์œผ๋ฉฐ ์™„๋ฒฝํ•˜๊ฒŒ ๋ฐ˜์‘ํ•ฉ๋‹ˆ๋‹ค. (๋„ˆ๋Š” ๋ณผ ์ˆ˜์žˆ์–ด ์—ฌ๊ธฐ์—.)

ํ”„๋ŸฐํŠธ์—”๋“œ ๋„์žฅ: ๊ฐœ๋ฐœ์ž ๊ธฐ์ˆ ์„ ๊ต์œกํ•˜๋Š” ํ”„๋กœ์ ํŠธ(์‹ ๊ทœ 5๊ฐœ + ๊ธฐ์กด 43๊ฐœ)

์‹ ์šฉ์นด๋“œ ํ˜•ํƒœ

๋‹น์‹ ์ด ๋ฐฐ์šธ ๋‚ด์šฉ:

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

๋ง‰๋Œ€ ๊ทธ๋ž˜ํ”„

ํžˆ์Šคํ† ๊ทธ๋žจ์€ ๋‚˜ํƒ€๋‚ด๋Š” ๊ฐ’์— ๋น„๋ก€ํ•˜๋Š” ๋†’์ด๋‚˜ ๊ธธ์ด๋ฅผ ๊ฐ–๋Š” ์ง์‚ฌ๊ฐํ˜• ๋ง‰๋Œ€๋กœ ๋ฒ”์ฃผํ˜• ๋ฐ์ดํ„ฐ๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ์ฐจํŠธ ๋˜๋Š” ๊ทธ๋ž˜ํ”„์ž…๋‹ˆ๋‹ค.

์ˆ˜์ง ๋˜๋Š” ์ˆ˜ํ‰์œผ๋กœ ์ ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ˆ˜์ง ๋ง‰๋Œ€ ์ฐจํŠธ๋ฅผ ์„  ์ฐจํŠธ๋ผ๊ณ ๋„ ํ•ฉ๋‹ˆ๋‹ค.

ํ”„๋ŸฐํŠธ์—”๋“œ ๋„์žฅ: ๊ฐœ๋ฐœ์ž ๊ธฐ์ˆ ์„ ๊ต์œกํ•˜๋Š” ํ”„๋กœ์ ํŠธ(์‹ ๊ทœ 5๊ฐœ + ๊ธฐ์กด 43๊ฐœ)

๋‹น์‹ ์ด ๋ฐฐ์šธ ๋‚ด์šฉ:

  • ์ฒด๊ณ„์ ์ด๊ณ  ์ดํ•ดํ•˜๊ธฐ ์‰ฌ์šด ๋ฐฉ์‹์œผ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ํ‘œ์‹œํ•ฉ๋‹ˆ๋‹ค.
  • ์ถ”๊ฐ€: ์š”์†Œ ์‚ฌ์šฉ ๋ฐฉ๋ฒ• ์•Œ์•„๋ณด๊ธฐ canvas ๊ทธ๋ฆฌ๊ณ  ๊ทธ๊ฒƒ์œผ๋กœ ์š”์†Œ๋ฅผ ๊ทธ๋ฆฌ๋Š” ๋ฐฉ๋ฒ•

์—ฌ๊ธฐ์— ์„ธ๊ณ„ ์ธ๊ตฌ ๋ฐ์ดํ„ฐ๋ฅผ ์ฐพ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์—ฐ๋„๋ณ„๋กœ ์ •๋ ฌ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.

ํŠธ์œ„ํ„ฐ ํ•˜ํŠธ ์• ๋‹ˆ๋ฉ”์ด์…˜

2016๋…„์— ํŠธ์œ„ํ„ฐ๋Š” ํŠธ์œ—์— ์ด ๋†€๋ผ์šด ์• ๋‹ˆ๋ฉ”์ด์…˜์„ ์„ ๋ณด์˜€์Šต๋‹ˆ๋‹ค. 2019๋…„ ๊ธฐ์ค€์œผ๋กœ ์—ฌ์ „ํžˆ ๊ทธ ๋ถ€๋ถ„์ด ์ค‘์š”ํ•ด ๋ณด์ž…๋‹ˆ๋‹ค. ์ง์ ‘ ๋งŒ๋“ค์–ด ๋ณด๋Š” ๊ฒƒ์€ ์–ด๋–จ๊นŒ์š”?

ํ”„๋ŸฐํŠธ์—”๋“œ ๋„์žฅ: ๊ฐœ๋ฐœ์ž ๊ธฐ์ˆ ์„ ๊ต์œกํ•˜๋Š” ํ”„๋กœ์ ํŠธ(์‹ ๊ทœ 5๊ฐœ + ๊ธฐ์กด 43๊ฐœ)
๋‹น์‹ ์ด ๋ฐฐ์šธ ๋‚ด์šฉ:

  • CSS ์†์„ฑ์œผ๋กœ ์ž‘์—… keyframes
  • HTML ์š”์†Œ ์กฐ์ž‘ ๋ฐ ์• ๋‹ˆ๋ฉ”์ด์…˜
  • JavaScript, HTML ๋ฐ CSS ๊ฒฐํ•ฉ

๊ฒ€์ƒ‰ ๊ฐ€๋Šฅํ•œ GitHub ์ €์žฅ์†Œ

์—ฌ๊ธฐ์—๋Š” ๋ฉ‹์ง„ ๊ฒƒ์ด ์—†์Šต๋‹ˆ๋‹ค. GitHub ์ €์žฅ์†Œ๋Š” ๋‹จ์ง€ ๋ฏธํ™”๋œ ๋ชฉ๋ก์ผ ๋ฟ์ž…๋‹ˆ๋‹ค.
๋ชฉํ‘œ๋Š” ์ €์žฅ์†Œ๋ฅผ ํ‘œ์‹œํ•˜๊ณ  ์‚ฌ์šฉ์ž๊ฐ€ ์ด๋ฅผ ํ•„ํ„ฐ๋งํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์‚ฌ์šฉ ๊ณต์‹ GitHub API ๊ฐ ์‚ฌ์šฉ์ž์— ๋Œ€ํ•œ ์ €์žฅ์†Œ๋ฅผ ์–ป์œผ๋ ค๋ฉด.

ํ”„๋ŸฐํŠธ์—”๋“œ ๋„์žฅ: ๊ฐœ๋ฐœ์ž ๊ธฐ์ˆ ์„ ๊ต์œกํ•˜๋Š” ํ”„๋กœ์ ํŠธ(์‹ ๊ทœ 5๊ฐœ + ๊ธฐ์กด 43๊ฐœ)

GitHub ํ”„๋กœํ•„ ํŽ˜์ด์ง€ - github.com/indreklasn

๋‹น์‹ ์ด ๋ฐฐ์šธ ๋‚ด์šฉ:

Reddit ์Šคํƒ€์ผ ์ฑ„ํŒ…

์ฑ„ํŒ…์€ ๋‹จ์ˆœ์„ฑ๊ณผ ์‚ฌ์šฉ ์šฉ์ด์„ฑ์œผ๋กœ ์ธํ•ด ๋„๋ฆฌ ์‚ฌ์šฉ๋˜๋Š” ์˜์‚ฌ์†Œํ†ต ๋ฐฉ๋ฒ•์ž…๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ํ˜„๋Œ€ ์ฑ„ํŒ…๋ฐฉ์— ์‹ค์ œ๋กœ ํ™œ๋ ฅ์„ ๋ถˆ์–ด๋„ฃ๋Š” ๊ฒƒ์€ ๋ฌด์—‡์ผ๊นŒ์š”? ์›น์†Œ์ผ“!

ํ”„๋ŸฐํŠธ์—”๋“œ ๋„์žฅ: ๊ฐœ๋ฐœ์ž ๊ธฐ์ˆ ์„ ๊ต์œกํ•˜๋Š” ํ”„๋กœ์ ํŠธ(์‹ ๊ทœ 5๊ฐœ + ๊ธฐ์กด 43๊ฐœ)

๋‹น์‹ ์ด ๋ฐฐ์šธ ๋‚ด์šฉ:

  • WebSocket, ์‹ค์‹œ๊ฐ„ ํ†ต์‹  ๋ฐ ๋ฐ์ดํ„ฐ ์—…๋ฐ์ดํŠธ ์‚ฌ์šฉ
  • ์‚ฌ์šฉ์ž ์•ก์„ธ์Šค ์ˆ˜์ค€ ์ž‘์—…(์˜ˆ: ์ฑ„ํŒ… ์ฑ„๋„ ์†Œ์œ ์ž์—๊ฒŒ ์—ญํ• ์ด ์žˆ์Œ) admin๋ฐ ๋ฐฉ์— ์žˆ๋Š” ๋‹ค๋ฅธ ์‚ฌ๋žŒ๋“ค - user)
  • ์–‘์‹ ์ฒ˜๋ฆฌ ๋ฐ ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ - ๋ฉ”์‹œ์ง€ ์ „์†ก์„ ์œ„ํ•œ ์ฑ„ํŒ… ์ฐฝ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค. input
  • ๋‹ค์–‘ํ•œ ์ฑ„ํŒ… ์ƒ์„ฑ ๋ฐ ์ฐธ์—ฌ
  • ๊ฐœ์ธ ๋ฉ”์‹œ์ง€๋กœ ์ž‘์—…ํ•˜์„ธ์š”. ์‚ฌ์šฉ์ž๋Š” ๋‹ค๋ฅธ ์‚ฌ์šฉ์ž์™€ ๋น„๊ณต๊ฐœ๋กœ ์ฑ„ํŒ…ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ธฐ๋ณธ์ ์œผ๋กœ ๋‘ ์‚ฌ์šฉ์ž ๊ฐ„์— WebSocket ์—ฐ๊ฒฐ์„ ์„ค์ •ํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.

์ŠคํŠธ๋ผ์ดํ”„ ์Šคํƒ€์ผ ํƒ์ƒ‰

์ด ํƒ์ƒ‰์„ ๋…ํŠนํ•˜๊ฒŒ ๋งŒ๋“œ๋Š” ๊ฒƒ์€ ํŒ์˜ค๋ฒ„ ์ปจํ…Œ์ด๋„ˆ๊ฐ€ ์ฝ˜ํ…์ธ ์— ๋งž๊ฒŒ ๋ณ€ํ˜•๋œ๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ƒˆ๋กœ์šด ํŒ์˜ค๋ฒ„๋ฅผ ์—ด๊ณ  ๋‹ซ๋Š” ์ „ํ†ต์ ์ธ ๋™์ž‘์— ๋น„ํ•ด ์ด ์ „ํ™˜์—๋Š” ์šฐ์•„ํ•จ์ด ์žˆ์Šต๋‹ˆ๋‹ค.

ํ”„๋ŸฐํŠธ์—”๋“œ ๋„์žฅ: ๊ฐœ๋ฐœ์ž ๊ธฐ์ˆ ์„ ๊ต์œกํ•˜๋Š” ํ”„๋กœ์ ํŠธ(์‹ ๊ทœ 5๊ฐœ + ๊ธฐ์กด 43๊ฐœ)

๋‹น์‹ ์ด ๋ฐฐ์šธ ๋‚ด์šฉ:

  • CSS ์• ๋‹ˆ๋ฉ”์ด์…˜์„ ์ „ํ™˜๊ณผ ๊ฒฐํ•ฉ
  • ์ฝ˜ํ…์ธ ๋ฅผ ์–ด๋‘ก๊ฒŒ ํ•˜๊ณ  ํ”Œ๋กœํŒ… ์š”์†Œ์— ํ™œ์„ฑ ํด๋ž˜์Šค๋ฅผ ์ ์šฉํ•ฉ๋‹ˆ๋‹ค.

ํŒฉ๋งจ

ํ”„๋ŸฐํŠธ์—”๋“œ ๋„์žฅ: ๊ฐœ๋ฐœ์ž ๊ธฐ์ˆ ์„ ๊ต์œกํ•˜๋Š” ํ”„๋กœ์ ํŠธ(์‹ ๊ทœ 5๊ฐœ + ๊ธฐ์กด 43๊ฐœ)

๋‚˜๋งŒ์˜ ํŒฉ๋งจ ๋ฒ„์ „์„ ๋งŒ๋“ค์–ด๋ณด์„ธ์š”. ์ด๊ฒƒ์€ ๊ฒŒ์ž„์ด ์–ด๋–ป๊ฒŒ ๊ฐœ๋ฐœ๋˜๋Š”์ง€์— ๋Œ€ํ•œ ์•„์ด๋””์–ด๋ฅผ ์–ป๊ณ  ๊ธฐ๋ณธ์„ ์ดํ•ดํ•˜๋Š” ์ข‹์€ ๋ฐฉ๋ฒ•์ž…๋‹ˆ๋‹ค. JavaScript ํ”„๋ ˆ์ž„์›Œํฌ์ธ React ๋˜๋Š” Vue๋ฅผ ์‚ฌ์šฉํ•˜์„ธ์š”.

ะ’ั‹ ะทะฝะฐะตั‚ะต:

  • ์š”์†Œ๊ฐ€ ์ด๋™ํ•˜๋Š” ๋ฐฉ๋ฒ•
  • ๋ˆ„๋ฅผ ํ‚ค๋ฅผ ๊ฒฐ์ •ํ•˜๋Š” ๋ฐฉ๋ฒ•
  • ์ถฉ๋Œ ์ˆœ๊ฐ„์„ ๊ฒฐ์ •ํ•˜๋Š” ๋ฐฉ๋ฒ•
  • ๋” ๋‚˜์•„๊ฐ€ ๊ณ ์ŠคํŠธ ์ด๋™ ์ปจํŠธ๋กค์„ ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ด ํ”„๋กœ์ ํŠธ์˜ ์˜ˆ๋ฅผ ์ฐพ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค ์ €์žฅ์†Œ์— GitHub์˜

์‚ฌ์šฉ์ž ๊ด€๋ฆฌ

ํ”„๋ŸฐํŠธ์—”๋“œ ๋„์žฅ: ๊ฐœ๋ฐœ์ž ๊ธฐ์ˆ ์„ ๊ต์œกํ•˜๋Š” ํ”„๋กœ์ ํŠธ(์‹ ๊ทœ 5๊ฐœ + ๊ธฐ์กด 43๊ฐœ)

๊ณ„ํš ์ €์žฅ์†Œ์— GitHub์˜

์‚ฌ์šฉ์ž ๊ด€๋ฆฌ๋ฅผ ์œ„ํ•œ CRUD ์œ ํ˜• ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์ž‘์„ฑํ•˜๋ฉด ๊ฐœ๋ฐœ์˜ ๊ธฐ๋ณธ ์‚ฌํ•ญ์„ ๋ฐฐ์šธ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Š” ํŠนํžˆ ์ƒˆ๋กœ์šด ๊ฐœ๋ฐœ์ž์—๊ฒŒ ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค.

ะ’ั‹ ะทะฝะฐะตั‚ะต:

  • ๋ผ์šฐํŒ…์ด๋ž€ ๋ฌด์—‡์ž…๋‹ˆ๊นŒ?
  • ๋ฐ์ดํ„ฐ ์ž…๋ ฅ ์–‘์‹์„ ์ฒ˜๋ฆฌํ•˜๊ณ  ์‚ฌ์šฉ์ž๊ฐ€ ์ž…๋ ฅํ•œ ๋‚ด์šฉ์„ ํ™•์ธํ•˜๋Š” ๋ฐฉ๋ฒ•
  • ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ž‘์—… ๋ฐฉ๋ฒ• - ์ž‘์—… ์ƒ์„ฑ, ์ฝ๊ธฐ, ์—…๋ฐ์ดํŠธ ๋ฐ ์‚ญ์ œ

ํ˜„์žฌ ์œ„์น˜์˜ ๋‚ ์”จ ํ™•์ธํ•˜๊ธฐ

ํ”„๋ŸฐํŠธ์—”๋“œ ๋„์žฅ: ๊ฐœ๋ฐœ์ž ๊ธฐ์ˆ ์„ ๊ต์œกํ•˜๋Š” ํ”„๋กœ์ ํŠธ(์‹ ๊ทœ 5๊ฐœ + ๊ธฐ์กด 43๊ฐœ)
๊ณ„ํš ์ €์žฅ์†Œ์— GitHub์˜

์•ฑ์„ ๋งŒ๋“ค๊ณ  ์‹ถ๋‹ค๋ฉด ๋‚ ์”จ ์•ฑ์œผ๋กœ ์‹œ์ž‘ํ•ด ๋ณด์„ธ์š”. ์ด ํ”„๋กœ์ ํŠธ๋Š” Swift๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์™„๋ฃŒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ตฌ์ถ• ๊ฒฝํ—˜์„ ์Œ“๋Š” ๊ฒƒ ์™ธ์—๋„ ๋‹ค์Œ์„ ๋ฐฐ์šฐ๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.

  • API๋กœ ์ž‘์—…ํ•˜๋Š” ๋ฐฉ๋ฒ•
  • ์œ„์น˜์ •๋ณด๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•
  • ํ…์ŠคํŠธ ์ž…๋ ฅ์„ ์ถ”๊ฐ€ํ•˜์—ฌ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๋”์šฑ ๋™์ ์œผ๋กœ ๋งŒ๋“œ์„ธ์š”. ์—ฌ๊ธฐ์— ์‚ฌ์šฉ์ž๋Š” ์ž์‹ ์˜ ์œ„์น˜๋ฅผ โ€‹โ€‹์ž…๋ ฅํ•˜์—ฌ ํŠน์ • ์œ„์น˜์˜ ๋‚ ์”จ๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

API๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ๋‚ ์”จ ๋ฐ์ดํ„ฐ๋ฅผ ์–ป์œผ๋ ค๋ฉด OpenWeather API๋ฅผ ์‚ฌ์šฉํ•˜์„ธ์š”. OpenWeather API์— ๋Œ€ํ•œ ์ถ”๊ฐ€ ์ •๋ณด ์—ฌ๊ธฐ์—.

์ฑ„ํŒ…์ฐฝ

ํ”„๋ŸฐํŠธ์—”๋“œ ๋„์žฅ: ๊ฐœ๋ฐœ์ž ๊ธฐ์ˆ ์„ ๊ต์œกํ•˜๋Š” ํ”„๋กœ์ ํŠธ(์‹ ๊ทœ 5๊ฐœ + ๊ธฐ์กด 43๊ฐœ)
๋‚ด ์ฑ„ํŒ… ์ฐฝ์ด ๋‘ ๊ฐœ์˜ ๋ธŒ๋ผ์šฐ์ € ํƒญ์—์„œ ์—ด๋ฆฝ๋‹ˆ๋‹ค.

์ฑ„ํŒ… ์ฐฝ์„ ๋งŒ๋“œ๋Š” ๊ฒƒ์€ ์†Œ์ผ“์„ ์‹œ์ž‘ํ•˜๋Š” ์™„๋ฒฝํ•œ ๋ฐฉ๋ฒ•์ž…๋‹ˆ๋‹ค. ๊ธฐ์ˆ  ์Šคํƒ์˜ ์„ ํƒ์€ ์—„์ฒญ๋‚ฉ๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด Node.js๋Š” ์™„๋ฒฝํ•ฉ๋‹ˆ๋‹ค.

์†Œ์ผ“์˜ ์ž‘๋™ ๋ฐฉ์‹๊ณผ ๊ตฌํ˜„ ๋ฐฉ๋ฒ•์„ ๋ฐฐ์šฐ๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. ์ด๊ฒƒ์ด ์ด ํ”„๋กœ์ ํŠธ์˜ ๊ฐ€์žฅ ํฐ ์žฅ์ ์ด๋‹ค.

์†Œ์ผ“ ์ž‘์—…์„ ์›ํ•˜๋Š” Laravel ๊ฐœ๋ฐœ์ž๋ผ๋ฉด ์ œ ๊ธ€์„ ์ฝ์–ด๋ณด์„ธ์š”. ัั‚ะฐั‚ัŒัŽ

๊นƒ๋žฉ CI

ํ”„๋ŸฐํŠธ์—”๋“œ ๋„์žฅ: ๊ฐœ๋ฐœ์ž ๊ธฐ์ˆ ์„ ๊ต์œกํ•˜๋Š” ํ”„๋กœ์ ํŠธ(์‹ ๊ทœ 5๊ฐœ + ๊ธฐ์กด 43๊ฐœ)

์ถœ์ฒ˜

CI(์ง€์†์  ํ†ตํ•ฉ)๋ฅผ ์ฒ˜์Œ ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ GitLab CI๋ฅผ ์‚ฌ์šฉํ•ด ๋ณด์„ธ์š”. ๋ช‡ ๊ฐ€์ง€ ํ™˜๊ฒฝ์„ ์„ค์ •ํ•˜๊ณ  ๋ช‡ ๊ฐ€์ง€ ํ…Œ์ŠคํŠธ๋ฅผ ์‹คํ–‰ํ•ด ๋ณด์„ธ์š”. ๋ณ„๋กœ ์–ด๋ ค์šด ํ”„๋กœ์ ํŠธ๋Š” ์•„๋‹ˆ์ง€๋งŒ, ์ด ํ”„๋กœ์ ํŠธ๋ฅผ ํ†ตํ•ด ๋งŽ์€ ๊ฒƒ์„ ๋ฐฐ์šธ ์ˆ˜ ์žˆ์„ ๊ฑฐ๋ผ ํ™•์‹ ํ•ฉ๋‹ˆ๋‹ค. ํ˜„์žฌ ๋งŽ์€ ๊ฐœ๋ฐœํŒ€์ด CI๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์‚ฌ์šฉ๋ฒ•์„ ์•Œ์•„๋‘๋ฉด ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค.

ะ’ั‹ ะทะฝะฐะตั‚ะต:

  • GitLab CI ๋ž€ ๋ฌด์—‡์ž…๋‹ˆ๊นŒ?
  • ๊ตฌ์„ฑ ๋ฐฉ๋ฒ• .gitlab-ci.ymlGitLab ์‚ฌ์šฉ์ž์—๊ฒŒ ๋ฌด์—‡์„ ํ•ด์•ผ ํ• ์ง€ ์•Œ๋ ค์ค๋‹ˆ๋‹ค.
  • ๋‹ค๋ฅธ ํ™˜๊ฒฝ์— ๋ฐฐํฌํ•˜๋Š” ๋ฐฉ๋ฒ•

์›น์‚ฌ์ดํŠธ ๋ถ„์„๊ธฐ

ํ”„๋ŸฐํŠธ์—”๋“œ ๋„์žฅ: ๊ฐœ๋ฐœ์ž ๊ธฐ์ˆ ์„ ๊ต์œกํ•˜๋Š” ํ”„๋กœ์ ํŠธ(์‹ ๊ทœ 5๊ฐœ + ๊ธฐ์กด 43๊ฐœ)

์›น์‚ฌ์ดํŠธ์˜ ์˜๋ฏธ๋ฅผ ๋ถ„์„ํ•˜๊ณ  ๋“ฑ๊ธ‰์„ ๋งค๊ธฐ๋Š” ์Šคํฌ๋ ˆ์ดํผ๋ฅผ ๋งŒ๋“œ์„ธ์š”. ์˜ˆ๋ฅผ ๋“ค์–ด ์ด๋ฏธ์ง€์— ๋ˆ„๋ฝ๋œ ๋Œ€์ฒด ํƒœ๊ทธ๊ฐ€ ์žˆ๋Š”์ง€ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋˜๋Š” ํŽ˜์ด์ง€์— SEO ๋ฉ”ํƒ€ ํƒœ๊ทธ๊ฐ€ ์žˆ๋Š”์ง€ ํ™•์ธํ•˜์„ธ์š”. ์Šคํฌ๋ ˆ์ดํผ๋Š” ์‚ฌ์šฉ์ž ์ธํ„ฐํŽ˜์ด์Šค ์—†์ด ์ƒ์„ฑ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

ะ’ั‹ ะทะฝะฐะตั‚ะต:

  • ์Šคํฌ๋ ˆ์ดํผ๋Š” ์–ด๋–ป๊ฒŒ ์ž‘๋™ํ•˜๋‚˜์š”?
  • DOM ์„ ํƒ์ž๋ฅผ ๋งŒ๋“œ๋Š” ๋ฐฉ๋ฒ•
  • ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ์ž‘์„ฑํ•˜๋Š” ๋ฐฉ๋ฒ•
  • ๊ฑฐ๊ธฐ์„œ ๋ฉˆ์ถ”๊ณ  ์‹ถ์ง€ ์•Š๋‹ค๋ฉด ์‚ฌ์šฉ์ž ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ๋งŒ๋“œ์„ธ์š”. ํ™•์ธํ•˜๋Š” ๊ฐ ์›น์‚ฌ์ดํŠธ์— ๋Œ€ํ•œ ๋ณด๊ณ ์„œ๋ฅผ ์ž‘์„ฑํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค.

์†Œ์…œ ๋„คํŠธ์›Œํฌ์—์„œ ๊ฐ์ • ๊ฐ์ง€

ํ”„๋ŸฐํŠธ์—”๋“œ ๋„์žฅ: ๊ฐœ๋ฐœ์ž ๊ธฐ์ˆ ์„ ๊ต์œกํ•˜๋Š” ํ”„๋กœ์ ํŠธ(์‹ ๊ทœ 5๊ฐœ + ๊ธฐ์กด 43๊ฐœ)

์ถœ์ฒ˜

์†Œ์…œ ๋ฏธ๋””์–ด์˜ ๊ฐ์ • ๊ฐ์ง€๋Š” ๊ธฐ๊ณ„ ํ•™์Šต์„ ์†Œ๊ฐœํ•˜๋Š” ์ข‹์€ ๋ฐฉ๋ฒ•์ž…๋‹ˆ๋‹ค.

ํ•˜๋‚˜์˜ ์†Œ์…œ ๋„คํŠธ์›Œํฌ๋งŒ ๋ถ„์„ํ•˜๋Š” ๊ฒƒ๋ถ€ํ„ฐ ์‹œ์ž‘ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ชจ๋“  ์‚ฌ๋žŒ์€ ๋Œ€๊ฐœ ํŠธ์œ„ํ„ฐ๋กœ ์‹œ์ž‘ํ•ฉ๋‹ˆ๋‹ค.

์ด๋ฏธ ๋จธ์‹ ๋Ÿฌ๋‹ ๊ฒฝํ—˜์ด ์žˆ๋‹ค๋ฉด ๋‹ค์–‘ํ•œ ์†Œ์…œ ๋„คํŠธ์›Œํฌ์—์„œ ๋ฐ์ดํ„ฐ๋ฅผ ์ˆ˜์ง‘ํ•˜๊ณ  ๊ฒฐํ•ฉํ•ด ๋ณด์„ธ์š”.

ะ’ั‹ ะทะฝะฐะตั‚ะต:

  • ๋จธ์‹ ๋Ÿฌ๋‹์ด๋ž€?

ํŠธ๋ ๋กœ ํด๋ก 

ํ”„๋ŸฐํŠธ์—”๋“œ ๋„์žฅ: ๊ฐœ๋ฐœ์ž ๊ธฐ์ˆ ์„ ๊ต์œกํ•˜๋Š” ํ”„๋กœ์ ํŠธ(์‹ ๊ทœ 5๊ฐœ + ๊ธฐ์กด 43๊ฐœ)

Indrek Lasn์˜ Trello ํด๋ก .

๋‹น์‹ ์ด ๋ฐฐ์šธ ๋‚ด์šฉ:

  • ์š”์ฒญ ์ฒ˜๋ฆฌ ๊ฒฝ๋กœ ๊ตฌ์„ฑ(๋ผ์šฐํŒ…)
  • ๋Œ์–ด์„œ ๋†“๊ธฐ.
  • ์ƒˆ ๊ฐœ์ฒด(๋ณด๋“œ, ๋ชฉ๋ก, ์นด๋“œ)๋ฅผ ๋งŒ๋“œ๋Š” ๋ฐฉ๋ฒ•.
  • ์ž…๋ ฅ ๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌ ๋ฐ ํ™•์ธ.
  • ํด๋ผ์ด์–ธํŠธ ์ธก: ๋กœ์ปฌ ์ €์žฅ์†Œ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•, ๋กœ์ปฌ ์ €์žฅ์†Œ์— ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜๋Š” ๋ฐฉ๋ฒ•, ๋กœ์ปฌ ์ €์žฅ์†Œ์—์„œ ๋ฐ์ดํ„ฐ๋ฅผ ์ฝ๋Š” ๋ฐฉ๋ฒ•.
  • ์„œ๋ฒ„ ์ธก์—์„œ: ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•, ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜๋Š” ๋ฐฉ๋ฒ•, ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์—์„œ ๋ฐ์ดํ„ฐ๋ฅผ ์ฝ๋Š” ๋ฐฉ๋ฒ•.

๋‹ค์Œ์€ ์ €์žฅ์†Œ์˜ ์˜ˆ์ž…๋‹ˆ๋‹ค., React+Redux๋กœ ์ œ์ž‘๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

๊ด€๋ฆฌ์ž ํŒจ๋„

ํ”„๋ŸฐํŠธ์—”๋“œ ๋„์žฅ: ๊ฐœ๋ฐœ์ž ๊ธฐ์ˆ ์„ ๊ต์œกํ•˜๋Š” ํ”„๋กœ์ ํŠธ(์‹ ๊ทœ 5๊ฐœ + ๊ธฐ์กด 43๊ฐœ)
Github ์ €์žฅ์†Œ.

๊ธฐ๋ณธ ์‚ฌํ•ญ์„ ํ•™์Šตํ•˜๋Š” ๋ฐ ์ด์ƒ์ ์ธ ๊ฐ„๋‹จํ•œ CRUD ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ž…๋‹ˆ๋‹ค. ๋ฐฐ์šฐ์ž:

  • ์‚ฌ์šฉ์ž๋ฅผ ์ƒ์„ฑํ•˜๊ณ  ์‚ฌ์šฉ์ž๋ฅผ ๊ด€๋ฆฌํ•ฉ๋‹ˆ๋‹ค.
  • ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์™€ ์ƒํ˜ธ ์ž‘์šฉ - ์‚ฌ์šฉ์ž ์ƒ์„ฑ, ์ฝ๊ธฐ, ํŽธ์ง‘, ์‚ญ์ œ.
  • ์ž…๋ ฅ ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ ๋ฐ ์–‘์‹ ์ž‘์—….

์•”ํ˜ธํ™”ํ ์ถ”์ ๊ธฐ(๊ธฐ๋ณธ ๋ชจ๋ฐ”์ผ ์•ฑ)

ํ”„๋ŸฐํŠธ์—”๋“œ ๋„์žฅ: ๊ฐœ๋ฐœ์ž ๊ธฐ์ˆ ์„ ๊ต์œกํ•˜๋Š” ํ”„๋กœ์ ํŠธ(์‹ ๊ทœ 5๊ฐœ + ๊ธฐ์กด 43๊ฐœ)
Github ์ €์žฅ์†Œ.

๋ฌด์—‡์ด๋“ : Swift, Objective-C, React Native, Java, Kotlin.

์šฐ๋ฆฌ๋Š” ๊ณต๋ถ€ํ•ฉ๋‹ˆ๋‹ค :

  • ๊ธฐ๋ณธ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ์ž‘๋™ ๋ฐฉ์‹.
  • API์—์„œ ๋ฐ์ดํ„ฐ๋ฅผ ๊ฒ€์ƒ‰ํ•˜๋Š” ๋ฐฉ๋ฒ•.
  • ๊ธฐ๋ณธ ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ์˜ ์ž‘๋™ ๋ฐฉ์‹.
  • ๋ชจ๋ฐ”์ผ ์‹œ๋ฎฌ๋ ˆ์ดํ„ฐ๋กœ ์ž‘์—…ํ•˜๋Š” ๋ฐฉ๋ฒ•.

์ด API๋ฅผ ์‚ฌ์šฉํ•ด ๋ณด์„ธ์š”. ๋” ์ข‹์€ ๊ฒƒ์„ ์ฐพ์œผ๋ฉด ๋Œ“๊ธ€์— ์ ์–ด์ฃผ์„ธ์š”.

๊ด€์‹ฌ์ด ์žˆ๋‹ค๋ฉด ์—ฌ๊ธฐ๋กœ ์—ฌ๊ธฐ ํŠœํ† ๋ฆฌ์–ผ์ด ์žˆ์Šต๋‹ˆ๋‹ค.

์ฒ˜์Œ๋ถ€ํ„ฐ ์ž์‹ ๋งŒ์˜ ์›นํŒฉ ๊ตฌ์„ฑ ์„ค์ •

ํ”„๋ŸฐํŠธ์—”๋“œ ๋„์žฅ: ๊ฐœ๋ฐœ์ž ๊ธฐ์ˆ ์„ ๊ต์œกํ•˜๋Š” ํ”„๋กœ์ ํŠธ(์‹ ๊ทœ 5๊ฐœ + ๊ธฐ์กด 43๊ฐœ)
๊ธฐ์ˆ ์ ์œผ๋กœ ์ด๊ฒƒ์€ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์•„๋‹ˆ์ง€๋งŒ, webpack์ด ๋‚ด๋ถ€์—์„œ ์–ด๋–ป๊ฒŒ ์ž‘๋™ํ•˜๋Š”์ง€ ์ดํ•ดํ•˜๋Š” ๊ฒƒ์€ ๋งค์šฐ ์œ ์šฉํ•œ ์ž‘์—…์ž…๋‹ˆ๋‹ค. ์ด์ œ ๊ทธ๊ฒƒ์€ "๋ธ”๋ž™๋ฐ•์Šค"๊ฐ€ ์•„๋‹ˆ๋ผ ์ดํ•ดํ•  ์ˆ˜ ์žˆ๋Š” ๋„๊ตฌ๊ฐ€ ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์š”๊ตฌ ์‚ฌํ•ญ :

  • es7์„ es5๋กœ ์ปดํŒŒ์ผํ•ฉ๋‹ˆ๋‹ค(๊ธฐ๋ณธ).
  • jsx๋ฅผ js๋กœ ์ปดํŒŒ์ผํ•˜๊ฑฐ๋‚˜ - .vue๋ฅผ .js๋กœ ์ปดํŒŒ์ผํ•ฉ๋‹ˆ๋‹ค(๋กœ๋”๋ฅผ ๋ฐฐ์›Œ์•ผ ํ•ฉ๋‹ˆ๋‹ค).
  • webpack ๊ฐœ๋ฐœ ์„œ๋ฒ„ ๋ฐ ํ•ซ ๋ชจ๋“ˆ ์žฌ๋กœ๋”ฉ์„ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. (vue-cli์™€ create-react-app ๋‘˜ ๋‹ค ์‚ฌ์šฉ)
  • Heroku, now.sh ๋˜๋Š” Github๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์›นํŒฉ ํ”„๋กœ์ ํŠธ๋ฅผ ๋ฐฐํฌํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์•Œ์•„๋ณด์„ธ์š”.
  • CSS(scss, less, stylus)๋ฅผ ์ปดํŒŒ์ผํ•˜๊ธฐ ์œ„ํ•ด ์„ ํ˜ธํ•˜๋Š” ์ „์ฒ˜๋ฆฌ๊ธฐ๋ฅผ ์„ค์ •ํ•˜์„ธ์š”.
  • webpack์—์„œ ์ด๋ฏธ์ง€์™€ SVG๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์•Œ์•„๋ณด์„ธ์š”.

์ด๊ฒƒ์€ ์™„์ „ ์ดˆ๋ณด์ž๋ฅผ ์œ„ํ•œ ๋†€๋ผ์šด ๋ฆฌ์†Œ์Šค์ž…๋‹ˆ๋‹ค.

ํ•ด์ปค๋‰ด์Šค ํด๋ก 

ํ”„๋ŸฐํŠธ์—”๋“œ ๋„์žฅ: ๊ฐœ๋ฐœ์ž ๊ธฐ์ˆ ์„ ๊ต์œกํ•˜๋Š” ํ”„๋กœ์ ํŠธ(์‹ ๊ทœ 5๊ฐœ + ๊ธฐ์กด 43๊ฐœ)
๋ชจ๋“  ์ œ๋‹ค์ด๋Š” ์ž์‹ ๋งŒ์˜ Hackernews๋ฅผ ๋งŒ๋“ค์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ทธ ๊ณผ์ •์—์„œ ๋ฐฐ์šธ ๋‚ด์šฉ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

  • hackernews API์™€ ์ƒํ˜ธ์ž‘์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•.
  • ๋‹จ์ผ ํŽ˜์ด์ง€ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๋งŒ๋“œ๋Š” ๋ฐฉ๋ฒ•.
  • ๋Œ“๊ธ€๋ณด๊ธฐ, ๊ฐœ๋ณ„๋Œ“๊ธ€, ํ”„๋กœํ•„ ๋“ฑ์˜ ๊ธฐ๋Šฅ์„ ๊ตฌํ˜„ํ•˜๋Š” ๋ฐฉ๋ฒ•์ž…๋‹ˆ๋‹ค.
  • ์š”์ฒญ ์ฒ˜๋ฆฌ ๊ฒฝ๋กœ ๊ตฌ์„ฑ(๋ผ์šฐํŒ…)

ํˆฌ๋‘์…ฐ์น˜์นด

ํ”„๋ŸฐํŠธ์—”๋“œ ๋„์žฅ: ๊ฐœ๋ฐœ์ž ๊ธฐ์ˆ ์„ ๊ต์œกํ•˜๋Š” ํ”„๋กœ์ ํŠธ(์‹ ๊ทœ 5๊ฐœ + ๊ธฐ์กด 43๊ฐœ)
TodoMVC.

์ง„์ง€ํ•˜๊ฒŒ? ํˆฌ๋‘์Šˆ์นด? ์ˆ˜์ฒœ ๊ฐœ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ์ด๋Ÿฐ ์ธ๊ธฐ์—๋Š” ์ด์œ ๊ฐ€ ์žˆ๋‹ค๊ณ  ๋ฏฟ์Šต๋‹ˆ๋‹ค.
Tudu ์•ฑ์€ ๊ธฐ๋ณธ ์‚ฌํ•ญ์„ ํ™•์‹คํžˆ ์ดํ•ดํ•  ์ˆ˜ ์žˆ๋Š” ์ข‹์€ ๋ฐฉ๋ฒ•์ž…๋‹ˆ๋‹ค. ๋ฐ”๋‹๋ผ Javascript๋กœ ํ•˜๋‚˜์˜ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์ž‘์„ฑํ•˜๊ณ , ์„ ํ˜ธํ•˜๋Š” ํ”„๋ ˆ์ž„์›Œํฌ๋กœ ํ•˜๋‚˜์˜ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์ž‘์„ฑํ•ด ๋ณด์‹ญ์‹œ์˜ค.

๋ฐฐ์šฐ๋‹ค:

  • ์ƒˆ ์ž‘์—…์„ ๋งŒ๋“ญ๋‹ˆ๋‹ค.
  • ํ•„๋“œ๊ฐ€ ์ฑ„์›Œ์กŒ๋Š”์ง€ ํ™•์ธํ•˜์„ธ์š”.
  • ์ž‘์—…์„ ํ•„ํ„ฐ๋งํ•ฉ๋‹ˆ๋‹ค(์™„๋ฃŒ, ํ™œ์„ฑ, ๋ชจ๋‘). ์‚ฌ์šฉ filter ะธ reduce.
  • ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์˜ ๊ธฐ๋ณธ์„ ์ดํ•ดํ•ฉ๋‹ˆ๋‹ค.

์ •๋ ฌ ๊ฐ€๋Šฅํ•œ ๋“œ๋ž˜๊ทธ ์•ค ๋“œ๋กญ ๋ชฉ๋ก

ํ”„๋ŸฐํŠธ์—”๋“œ ๋„์žฅ: ๊ฐœ๋ฐœ์ž ๊ธฐ์ˆ ์„ ๊ต์œกํ•˜๋Š” ํ”„๋กœ์ ํŠธ(์‹ ๊ทœ 5๊ฐœ + ๊ธฐ์กด 43๊ฐœ)
Github ์ €์žฅ์†Œ.

์ดํ•ดํ•˜๋Š” ๋ฐ ๋งค์šฐ ๋„์›€์ด ๋จ ๋“œ๋ž˜๊ทธ ์•ค ๋“œ๋กญ API.

๋ฐฐ์šฐ์ž:

  • ๋“œ๋ž˜๊ทธ ์•ค ๋“œ๋กญ API
  • ํ’๋ถ€ํ•œ UI ๋งŒ๋“ค๊ธฐ

๋ฉ”์‹ ์ € ํด๋ก (๋„ค์ดํ‹ฐ๋ธŒ ์•ฑ)

ํ”„๋ŸฐํŠธ์—”๋“œ ๋„์žฅ: ๊ฐœ๋ฐœ์ž ๊ธฐ์ˆ ์„ ๊ต์œกํ•˜๋Š” ํ”„๋กœ์ ํŠธ(์‹ ๊ทœ 5๊ฐœ + ๊ธฐ์กด 43๊ฐœ)
์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜๊ณผ ๊ธฐ๋ณธ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์–ด๋–ป๊ฒŒ ์ž‘๋™ํ•˜๋Š”์ง€ ์ดํ•ดํ•˜๊ฒŒ ๋˜์–ด ํšŒ์ƒ‰ ๋ฉ์–ด๋ฆฌ์™€ ์ฐจ๋ณ„ํ™”๋ฉ๋‹ˆ๋‹ค.

์šฐ๋ฆฌ๊ฐ€ ๊ณต๋ถ€ํ•  ๋‚ด์šฉ:

  • ์›น ์†Œ์ผ“(์ธ์Šคํ„ดํŠธ ๋ฉ”์‹œ์ง€)
  • ๊ธฐ๋ณธ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ์ž‘๋™ ๋ฐฉ์‹.
  • ๊ธฐ๋ณธ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์—์„œ ํ…œํ”Œ๋ฆฟ์ด ์ž‘๋™ํ•˜๋Š” ๋ฐฉ์‹.
  • ๊ธฐ๋ณธ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์—์„œ ์š”์ฒญ ์ฒ˜๋ฆฌ ๊ฒฝ๋กœ๋ฅผ ๊ตฌ์„ฑํ•ฉ๋‹ˆ๋‹ค.

ํ…์ŠคํŠธ ์—๋””ํ„ฐ

ํ”„๋ŸฐํŠธ์—”๋“œ ๋„์žฅ: ๊ฐœ๋ฐœ์ž ๊ธฐ์ˆ ์„ ๊ต์œกํ•˜๋Š” ํ”„๋กœ์ ํŠธ(์‹ ๊ทœ 5๊ฐœ + ๊ธฐ์กด 43๊ฐœ)

ํ…์ŠคํŠธ ํŽธ์ง‘๊ธฐ์˜ ๋ชฉ์ ์€ ์„œ์‹์„ ์œ ํšจํ•œ HTML ๋งˆํฌ์—…์œผ๋กœ ๋ณ€ํ™˜ํ•˜๋ ค๋Š” ์‚ฌ์šฉ์ž์˜ ๋…ธ๋ ฅ์„ ์ค„์ด๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ข‹์€ ํ…์ŠคํŠธ ํŽธ์ง‘๊ธฐ๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ์‚ฌ์šฉ์ž๊ฐ€ ๋‹ค์–‘ํ•œ ๋ฐฉ์‹์œผ๋กœ ํ…์ŠคํŠธ ์„œ์‹์„ ์ง€์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์–ด๋Š ์‹œ์ ์—์„œ ๋ชจ๋“  ์‚ฌ๋žŒ์ด ํ…์ŠคํŠธ ํŽธ์ง‘๊ธฐ๋ฅผ ์‚ฌ์šฉํ•ด ๋ณธ ์ ์ด ์žˆ์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ทธ๋ž˜์„œ ์™œ ์•ˆ๋ผ ์ง์ ‘ ๋งŒ๋“ค์–ด ๋ณด์„ธ์š”?

๋ ˆ๋”ง ํด๋ก 

ํ”„๋ŸฐํŠธ์—”๋“œ ๋„์žฅ: ๊ฐœ๋ฐœ์ž ๊ธฐ์ˆ ์„ ๊ต์œกํ•˜๋Š” ํ”„๋กœ์ ํŠธ(์‹ ๊ทœ 5๊ฐœ + ๊ธฐ์กด 43๊ฐœ)

๋ ˆ๋”ง ์†Œ์…œ ๋‰ด์Šค ์ˆ˜์ง‘, ์›น ์ฝ˜ํ…์ธ  ํ‰๊ฐ€ ๋ฐ ํ† ๋ก  ์‚ฌ์ดํŠธ์ž…๋‹ˆ๋‹ค.

Reddit์ด ๋Œ€๋ถ€๋ถ„์˜ ์‹œ๊ฐ„์„ ์ฐจ์ง€ํ•˜์ง€๋งŒ ๊ณ„์†ํ•ด์„œ Reddit์— ์ฐธ์—ฌํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. Reddit ๋ณต์ œ๋ณธ์„ ์ƒ์„ฑํ•˜๋Š” ๊ฒƒ์€ (Reddit์„ ํƒ์ƒ‰ํ•˜๋Š” ๋™์‹œ์—) ํ”„๋กœ๊ทธ๋ž˜๋ฐ์„ ๋ฐฐ์šฐ๋Š” ํšจ๊ณผ์ ์ธ ๋ฐฉ๋ฒ•์ž…๋‹ˆ๋‹ค.

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

๋˜‘๋˜‘ํ•œ ๊ณ ๊ฐ์€ ์ž‘์—…์ด ์ œ๋Œ€๋กœ ์ˆ˜ํ–‰๋˜์ง€ ์•Š๊ณ  ์žˆ์Œ์„ ์ฆ‰์‹œ ๊นจ๋‹ซ๊ณ  ๋‹ค๋ฅธ ์‚ฌ๋žŒ์„ ์ฐพ์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

ํ”„๋ŸฐํŠธ์—”๋“œ ๋„์žฅ: ๊ฐœ๋ฐœ์ž ๊ธฐ์ˆ ์„ ๊ต์œกํ•˜๋Š” ํ”„๋กœ์ ํŠธ(์‹ ๊ทœ 5๊ฐœ + ๊ธฐ์กด 43๊ฐœ)

๋ ˆ๋”ง API

์˜คํ”ˆ์†Œ์Šค NPM ํŒจํ‚ค์ง€ ๊ฒŒ์‹œ

ํ”„๋ŸฐํŠธ์—”๋“œ ๋„์žฅ: ๊ฐœ๋ฐœ์ž ๊ธฐ์ˆ ์„ ๊ต์œกํ•˜๋Š” ํ”„๋กœ์ ํŠธ(์‹ ๊ทœ 5๊ฐœ + ๊ธฐ์กด 43๊ฐœ)

Javascript ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•˜๋Š” ๊ฒฝ์šฐ ํŒจํ‚ค์ง€ ๊ด€๋ฆฌ์ž๋ฅผ ์‚ฌ์šฉํ•  ๊ฐ€๋Šฅ์„ฑ์ด ์žˆ์Šต๋‹ˆ๋‹ค. ํŒจํ‚ค์ง€ ๊ด€๋ฆฌ์ž๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๋‹ค๋ฅธ ์‚ฌ๋žŒ์ด ์ž‘์„ฑํ•˜๊ณ  ๊ฒŒ์‹œํ•œ ๊ธฐ์กด ์ฝ”๋“œ๋ฅผ ์žฌ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

ํŒจํ‚ค์ง€์˜ ์ „์ฒด ๊ฐœ๋ฐœ ์ฃผ๊ธฐ๋ฅผ ์ดํ•ดํ•˜๋Š” ๊ฒƒ์€ ๋งค์šฐ ์ข‹์€ ๊ฒฝํ—˜์„ ์ œ๊ณตํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ฝ”๋“œ๋ฅผ ๊ฒŒ์‹œํ•  ๋•Œ ์•Œ์•„์•ผ ํ•  ์‚ฌํ•ญ์ด ๋งŽ์ด ์žˆ์Šต๋‹ˆ๋‹ค. ๋ณด์•ˆ, ์˜๋ฏธ๋ก ์  ๋ฒ„์ „ ๊ด€๋ฆฌ, ํ™•์žฅ์„ฑ, ๋ช…๋ช… ๊ทœ์น™ ๋ฐ ์œ ์ง€ ๊ด€๋ฆฌ์— ๋Œ€ํ•ด ์ƒ๊ฐํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

ํŒจํ‚ค์ง€๋Š” ๋ฌด์—‡์ด๋“  ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์•„์ด๋””์–ด๊ฐ€ ์—†์œผ๋ฉด ๋‚˜๋งŒ์˜ Lodash๋ฅผ ๋งŒ๋“ค์–ด ๊ฒŒ์‹œํ•˜์„ธ์š”.

ํ”„๋ŸฐํŠธ์—”๋“œ ๋„์žฅ: ๊ฐœ๋ฐœ์ž ๊ธฐ์ˆ ์„ ๊ต์œกํ•˜๋Š” ํ”„๋กœ์ ํŠธ(์‹ ๊ทœ 5๊ฐœ + ๊ธฐ์กด 43๊ฐœ)

๋กœ๋‹ค์‰ฌ: lodash.com

์˜จ๋ผ์ธ์—์„œ ์–ด๋–ค ์ผ์„ ํ–ˆ๋‹ค๋ฉด ๋‹ค๋ฅธ ์‚ฌ๋žŒ๋ณด๋‹ค 10% ๋” ์•ž์„œ๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. ๋‹ค์Œ์€ ์œ ์šฉํ•œ ๋ฆฌ์†Œ์Šค์ž…๋‹ˆ๋‹ค. ์˜คํ”ˆ ์†Œ์Šค ๋ฐ ํŒจํ‚ค์ง€์— ๋Œ€ํ•ด.

freeCodeCamp ์ปค๋ฆฌํ˜๋Ÿผ

ํ”„๋ŸฐํŠธ์—”๋“œ ๋„์žฅ: ๊ฐœ๋ฐœ์ž ๊ธฐ์ˆ ์„ ๊ต์œกํ•˜๋Š” ํ”„๋กœ์ ํŠธ(์‹ ๊ทœ 5๊ฐœ + ๊ธฐ์กด 43๊ฐœ)

FCC ์ปค๋ฆฌํ˜๋Ÿผ

freeCodecamp๋Š” ๋งŽ์€ ๊ฒƒ์„ ์ˆ˜์ง‘ํ–ˆ์Šต๋‹ˆ๋‹ค ์ข…ํ•ฉ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์ฝ”์Šค.

freeCodeCamp๋Š” ๋น„์˜๋ฆฌ ๋‹จ์ฒด์ž…๋‹ˆ๋‹ค. ์ด๋Š” ๋Œ€ํ™”ํ˜• ์›น ๊ธฐ๋ฐ˜ ํ•™์Šต ํ”Œ๋žซํผ, ์˜จ๋ผ์ธ ์ปค๋ฎค๋‹ˆํ‹ฐ ํฌ๋Ÿผ, ๋Œ€ํ™”๋ฐฉ, ๋งค์ฒด ๊ฐ„ํ–‰๋ฌผ ๋ฐ ๋ชจ๋“  ์‚ฌ๋žŒ์ด ํ•™์Šต ์›น ๊ฐœ๋ฐœ์— ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•˜๋ ค๋Š” ์ง€์—ญ ์กฐ์ง์œผ๋กœ ๊ตฌ์„ฑ๋ฉ๋‹ˆ๋‹ค.

ํ”„๋ŸฐํŠธ์—”๋“œ ๋„์žฅ: ๊ฐœ๋ฐœ์ž ๊ธฐ์ˆ ์„ ๊ต์œกํ•˜๋Š” ํ”„๋กœ์ ํŠธ(์‹ ๊ทœ 5๊ฐœ + ๊ธฐ์กด 43๊ฐœ)

์ „์ฒด ๊ณผ์ •์„ ์ด์ˆ˜ํ•œ๋‹ค๋ฉด ์ฒซ ๋ฒˆ์งธ ์ง์—…์— ๋Œ€ํ•œ ์ž๊ฒฉ์„ ์ถฉ๋ถ„ํžˆ ๊ฐ–์ถ”๊ฒŒ ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์ฒ˜์Œ๋ถ€ํ„ฐ HTTP ์„œ๋ฒ„ ๋งŒ๋“ค๊ธฐ

HTTP ํ”„๋กœํ† ์ฝœ์€ ์ธํ„ฐ๋„ท์—์„œ ์ฝ˜ํ…์ธ ๊ฐ€ ์ด๋™ํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋˜๋Š” ์ฃผ์š” ํ”„๋กœํ† ์ฝœ ์ค‘ ํ•˜๋‚˜์ž…๋‹ˆ๋‹ค. HTTP ์„œ๋ฒ„๋Š” HTML, CSS, JS์™€ ๊ฐ™์€ ์ •์  ์ฝ˜ํ…์ธ ๋ฅผ ์ œ๊ณตํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.

HTTP ํ”„๋กœํ† ์ฝœ์„ ์ฒ˜์Œ๋ถ€ํ„ฐ ๊ตฌํ˜„ํ•  ์ˆ˜ ์žˆ์œผ๋ฉด ์‚ฌ๋ฌผ์ด ์ƒํ˜ธ ์ž‘์šฉํ•˜๋Š” ๋ฐฉ์‹์— ๋Œ€ํ•œ ์ง€์‹์ด ํ™•์žฅ๋ฉ๋‹ˆ๋‹ค.

์˜ˆ๋ฅผ ๋“ค์–ด NodeJ๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค๋ฉด Express๊ฐ€ HTTP ์„œ๋ฒ„๋ฅผ ์ œ๊ณตํ•œ๋‹ค๋Š” ๊ฒƒ์„ ์•Œ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ฐธ๊ณ ๋กœ ๋‹ค์Œ์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ๋Š”์ง€ ํ™•์ธํ•˜์„ธ์š”.

  • ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š๊ณ  ์„œ๋ฒ„ ์„ค์ •
  • ์„œ๋ฒ„๋Š” HTML, CSS ๋ฐ JS ์ฝ˜ํ…์ธ ๋ฅผ ์ œ๊ณตํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
  • ๋ผ์šฐํ„ฐ๋ฅผ ์ฒ˜์Œ๋ถ€ํ„ฐ ๊ตฌํ˜„ํ•˜๊ธฐ
  • ๋ณ€๊ฒฝ ์‚ฌํ•ญ ๋ชจ๋‹ˆํ„ฐ๋ง ๋ฐ ์„œ๋ฒ„ ์—…๋ฐ์ดํŠธ

์ด์œ ๋ฅผ ๋ชจ๋ฅธ๋‹ค๋ฉด ๋‹ค์Œ์„ ์‚ฌ์šฉํ•˜์„ธ์š”. ๊ณ ๋žญ ๊ทธ๋ฆฌ๊ณ  HTTP ์„œ๋ฒ„๋ฅผ ์ƒ์„ฑํ•ด ๋ณด์„ธ์š” ์บ๋”” ๊ธฐ์Šค๋กœ๋ถ€ํ„ฐ.

ํ”„๋ŸฐํŠธ์—”๋“œ ๋„์žฅ: ๊ฐœ๋ฐœ์ž ๊ธฐ์ˆ ์„ ๊ต์œกํ•˜๋Š” ํ”„๋กœ์ ํŠธ(์‹ ๊ทœ 5๊ฐœ + ๊ธฐ์กด 43๊ฐœ)

๋ฉ”๋ชจ์šฉ ๋ฐ์Šคํฌํƒ‘ ์•ฑ

ํ”„๋ŸฐํŠธ์—”๋“œ ๋„์žฅ: ๊ฐœ๋ฐœ์ž ๊ธฐ์ˆ ์„ ๊ต์œกํ•˜๋Š” ํ”„๋กœ์ ํŠธ(์‹ ๊ทœ 5๊ฐœ + ๊ธฐ์กด 43๊ฐœ)

์šฐ๋ฆฌ ๋ชจ๋‘ ๋ฉ”๋ชจ๋ฅผ ํ•ด์š”, ๊ทธ๋ ‡์ฃ ?

๋ฉ”๋ชจ ์•ฑ์„ ๋งŒ๋“ค์–ด ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ๋ฉ”๋ชจ๋ฅผ ์ €์žฅํ•˜๊ณ  ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์™€ ๋™๊ธฐํ™”ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. Electron, Swift ๋˜๋Š” ์›ํ•˜๋Š” ๊ฒƒ์„ ์‚ฌ์šฉํ•˜์—ฌ ์‹œ์Šคํ…œ์— ์ ํ•ฉํ•œ ๊ธฐ๋ณธ ์•ฑ์„ ๊ตฌ์ถ•ํ•˜์„ธ์š”.

์ด๊ฒƒ์„ ์ฒซ ๋ฒˆ์งธ ์ฑŒ๋ฆฐ์ง€(ํ…์ŠคํŠธ ํŽธ์ง‘๊ธฐ)์™€ ์ž์œ ๋กญ๊ฒŒ ๊ฒฐํ•ฉํ•ด ๋ณด์„ธ์š”.

๋ณด๋„ˆ์Šค๋กœ ๋ฐ์Šคํฌํ†ฑ ๋ฒ„์ „์„ ์›น ๋ฒ„์ „๊ณผ ๋™๊ธฐํ™”ํ•ด ๋ณด์„ธ์š”.

ํŒŸ์บ์ŠคํŠธ(์˜ค๋ฒ„์บ์ŠคํŠธ ํด๋ก )

ํ”„๋ŸฐํŠธ์—”๋“œ ๋„์žฅ: ๊ฐœ๋ฐœ์ž ๊ธฐ์ˆ ์„ ๊ต์œกํ•˜๋Š” ํ”„๋กœ์ ํŠธ(์‹ ๊ทœ 5๊ฐœ + ๊ธฐ์กด 43๊ฐœ)

ํŒŸ์บ์ŠคํŠธ๋ฅผ ๋“ฃ์ง€ ์•Š๋Š” ์‚ฌ๋žŒ์€ ๋ˆ„๊ตฌ์ž…๋‹ˆ๊นŒ?

๋‹ค์Œ ๊ธฐ๋Šฅ์„ ์‚ฌ์šฉํ•˜์—ฌ ์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ๋งŒ๋“ญ๋‹ˆ๋‹ค.

  • ๊ณ„์ • ์ƒ์„ฑ
  • ํŒŸ์บ์ŠคํŠธ ๊ฒ€์ƒ‰
  • ํŒŸ์บ์ŠคํŠธ ํ‰๊ฐ€ ๋ฐ ๊ตฌ๋…
  • 30์ดˆ ๋™์•ˆ ์ •์ง€ ๋ฐ ์žฌ์ƒ, ์†๋„ ๋ณ€๊ฒฝ, ์•ž์œผ๋กœ ๋ฐ ๋’ค๋กœ ๊ธฐ๋Šฅ์„ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค.

iTunes API๋ฅผ ์ถœ๋ฐœ์ ์œผ๋กœ ์‚ฌ์šฉํ•ด ๋ณด์„ธ์š”. ๋‹ค๋ฅธ ์ž๋ฃŒ๋ฅผ ์•„์‹œ๋Š” ๋ถ„์€ ๋Œ“๊ธ€์— ์˜ฌ๋ ค์ฃผ์„ธ์š”.

ํ”„๋ŸฐํŠธ์—”๋“œ ๋„์žฅ: ๊ฐœ๋ฐœ์ž ๊ธฐ์ˆ ์„ ๊ต์œกํ•˜๋Š” ํ”„๋กœ์ ํŠธ(์‹ ๊ทœ 5๊ฐœ + ๊ธฐ์กด 43๊ฐœ)

affiliate.itunes.apple.com/resources/documentation/itunes-store-web-service-search-api

ํ™”๋ฉด ์บก์ฒ˜

ํ”„๋ŸฐํŠธ์—”๋“œ ๋„์žฅ: ๊ฐœ๋ฐœ์ž ๊ธฐ์ˆ ์„ ๊ต์œกํ•˜๋Š” ํ”„๋กœ์ ํŠธ(์‹ ๊ทœ 5๊ฐœ + ๊ธฐ์กด 43๊ฐœ)

์•ˆ๋…•ํ•˜์„ธ์š”! ์ง€๊ธˆ ํ™”๋ฉด์„ ์ดฌ์˜ํ•˜๊ณ  ์žˆ์–ด์š”!

ํ™”๋ฉด์„ ์บก์ฒ˜ํ•˜๊ณ  ํด๋ฆฝ์„ ๋‹ค๋ฅธ ์ด๋ฆ„์œผ๋กœ ์ €์žฅํ•  ์ˆ˜ ์žˆ๋Š” ๋ฐ์Šคํฌํ†ฑ ๋˜๋Š” ์›น ์•ฑ์„ ๋งŒ๋“ญ๋‹ˆ๋‹ค. .gif

์—ฌ๊ธฐ์— ๋ช‡ ๊ฐ€์ง€ ํŒ์ด๊ฒƒ์„ ๋‹ฌ์„ฑํ•˜๋Š” ๋ฐฉ๋ฒ•.

์†Œ์Šค

์ถœ์ฒ˜ : habr.com

์ฝ”๋ฉ˜ํŠธ๋ฅผ ์ถ”๊ฐ€