์—ฐ์Šตํ•  ๋˜ ๋‹ค๋ฅธ ํ”„๋กœ์ ํŠธ ๋ชฉ๋ก

โ€œ์ดˆ๋ณด์ž๊ฐ€ ์‹œ๋„ํ•˜๋Š” ๊ฒƒ๋ณด๋‹ค ๋Œ€๊ฐ€๊ฐ€ ์‹ค์ˆ˜๋ฅผ ๋” ๋งŽ์ด ํ•œ๋‹คโ€

๋งˆ์ง€๋ง‰ ํ›ˆ๋ จ ํ”„๋กœ์ ํŠธ ๋ชฉ๋ก 50๊ฐœ์˜ ์ฝ๊ธฐ์™€ 600๊ฐœ์˜ ์ฆ๊ฒจ์ฐพ๊ธฐ๋ฅผ ๋ฐ›์•˜์Šต๋‹ˆ๋‹ค. ์ถ”๊ฐ€ ๋„์›€์„ ์›ํ•˜๋Š” ์‚ฌ๋žŒ๋“ค์„ ์œ„ํ•ด ์—ฐ์Šตํ•  ์ˆ˜ ์žˆ๋Š” ๋˜ ๋‹ค๋ฅธ ํฅ๋ฏธ๋กœ์šด ํ”„๋กœ์ ํŠธ ๋ชฉ๋ก์ด ์žˆ์Šต๋‹ˆ๋‹ค.

1. ํ…์ŠคํŠธ ํŽธ์ง‘๊ธฐ

์—ฐ์Šตํ•  ๋˜ ๋‹ค๋ฅธ ํ”„๋กœ์ ํŠธ ๋ชฉ๋ก

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

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

2. ๋ ˆ๋”ง ํด๋ก 

์—ฐ์Šตํ•  ๋˜ ๋‹ค๋ฅธ ํ”„๋กœ์ ํŠธ ๋ชฉ๋ก

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

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

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

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

์—ฐ์Šตํ•  ๋˜ ๋‹ค๋ฅธ ํ”„๋กœ์ ํŠธ ๋ชฉ๋ก

๋ ˆ๋”ง API

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

์—ฐ์Šตํ•  ๋˜ ๋‹ค๋ฅธ ํ”„๋กœ์ ํŠธ ๋ชฉ๋ก

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

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

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

์—ฐ์Šตํ•  ๋˜ ๋‹ค๋ฅธ ํ”„๋กœ์ ํŠธ ๋ชฉ๋ก

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

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

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

์—ฐ์Šตํ•  ๋˜ ๋‹ค๋ฅธ ํ”„๋กœ์ ํŠธ ๋ชฉ๋ก

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

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

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

์—ฐ์Šตํ•  ๋˜ ๋‹ค๋ฅธ ํ”„๋กœ์ ํŠธ ๋ชฉ๋ก

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

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

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

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

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

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

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

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

์—ฐ์Šตํ•  ๋˜ ๋‹ค๋ฅธ ํ”„๋กœ์ ํŠธ ๋ชฉ๋ก

6. ๋ฉ”๋ชจ์šฉ ๋ฐ์Šคํฌํ†ฑ ์•ฑ

์—ฐ์Šตํ•  ๋˜ ๋‹ค๋ฅธ ํ”„๋กœ์ ํŠธ ๋ชฉ๋ก

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

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

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

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

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

์—ฐ์Šตํ•  ๋˜ ๋‹ค๋ฅธ ํ”„๋กœ์ ํŠธ ๋ชฉ๋ก

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

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

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

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

์—ฐ์Šตํ•  ๋˜ ๋‹ค๋ฅธ ํ”„๋กœ์ ํŠธ ๋ชฉ๋ก

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

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

์—ฐ์Šตํ•  ๋˜ ๋‹ค๋ฅธ ํ”„๋กœ์ ํŠธ ๋ชฉ๋ก

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

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

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

๋ฒˆ์—ญ์€ ํšŒ์‚ฌ์˜ ์ง€์›์„ ๋ฐ›์•„ ์ง„ํ–‰๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์—๋””์Šจ ์†Œํ”„ํŠธ์›จ์–ด์ „๋ฌธ์ ์œผ๋กœ ์ข…์‚ฌํ•˜๋Š” ์‚ฌ๋žŒ PHP๋กœ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜๊ณผ ์›น์‚ฌ์ดํŠธ ๊ฐœ๋ฐœํ•˜๊ธฐ ๋Œ€๊ทœ๋ชจ ๊ณ ๊ฐ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ Java๋กœ ํด๋ผ์šฐ๋“œ ์„œ๋น„์Šค ๋ฐ ๋ชจ๋ฐ”์ผ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐœ๋ฐœ.

์ถœ์ฒ˜ : habr.com

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