๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
Lect & Tip

ํ‹ฐ์Šคํ† ๋ฆฌ jsFiddle ์—ฐ๋™ JSํ”ผ๋“ค ์‚ฌ์šฉ๋ฒ• ๋ธ”๋กœ๊ทธ์— ์ฝ”๋“œ ๊ณต์œ ํ•˜๋Š” ๋ฐฉ๋ฒ• codePen CodeSandbox. ์ฝ”๋“œ๋ธ”๋Ÿญ

by ๋‚ฏ์„ ๊ณต๊ฐ„2019 2023. 7. 7.

๋ชฉ์ฐจ

    ํ”„๋ก ํŠธ์—”๋“œ ๊ฐœ๋ฐœ ๋„๊ตฌ ํƒ์ƒ‰: codePen, CodeSandbox, jsFiddle ํ™œ์šฉ ๊ฐ€์ด๋“œ

    ์•ˆ๋…•ํ•˜์„ธ์š” ์—ฌ๋Ÿฌ๋ถ„, ํ”„๋ก ํŠธ์—”๋“œ ๊ฐœ๋ฐœ์— ์žˆ์–ด ์‹ค์‹œ๊ฐ„์œผ๋กœ ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•˜๊ณ  ๊ฒฐ๊ณผ๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋Š” ํ”Œ๋žซํผ๋“ค์„ ์†Œ๊ฐœํ•˜๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ์ด๋“ค ํ”Œ๋žซํผ์ด ๋ฐ”๋กœ codePen, CodeSandbox, ๊ทธ๋ฆฌ๊ณ  jsFiddle์ž…๋‹ˆ๋‹ค. ์ด๋“ค ๋„๊ตฌ๋ฅผ ํ™œ์šฉํ•˜๋ฉด, ์›น ๊ฐœ๋ฐœ ๊ณผ์ •์ด ๋ณด๋‹ค ๊ฐ„๊ฒฐํ•ด์ง€๊ณ , ์‹ค์‹œ๊ฐ„ ํ”ผ๋“œ๋ฐฑ์„ ํ†ตํ•ด ๋น ๋ฅธ ํ•™์Šต๊ณผ ๋ฌธ์ œ ํ•ด๊ฒฐ์ด ๊ฐ€๋Šฅํ•ด์ง‘๋‹ˆ๋‹ค. ๋˜ํ•œ, ์ด๋“ค ๋„๊ตฌ๋ฅผ ํ†ตํ•ด ์ž‘์„ฑํ•œ ์ฝ”๋“œ๋ฅผ ๋‹ค๋ฅธ ์‚ฌ๋žŒ๊ณผ ๊ณต์œ ํ•˜๊ณ , ํ˜‘์—…๊นŒ์ง€ ํ•  ์ˆ˜ ์žˆ์–ด ๊ฐœ๋ฐœ ๊ณต๋™์ฒด์—์„œ ๋†’์€ ์‚ฌ๋ž‘์„ ๋ฐ›๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์ง€๊ธˆ๋ถ€ํ„ฐ ์ด๋“ค ํ”Œ๋žซํผ์— ๋Œ€ํ•ด ์ข€ ๋” ์ž์„ธํžˆ ์‚ดํŽด๋ณด๋„๋ก ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.

    codePen, CodeSandbox, jsFiddle ์ด๋ž€?

    codePen, CodeSandbox, jsFiddle์€ ํ”„๋ก ํŠธ์—”๋“œ ์›น ๊ฐœ๋ฐœ์— ์‚ฌ์šฉ๋˜๋Š” ์ฝ”๋“œ ์—๋””ํ„ฐ๋กœ, HTML, CSS, JavaScript ์ฝ”๋“œ๋ฅผ ์›น์—์„œ ๋ฐ”๋กœ ์ž‘์„ฑํ•˜๊ณ  ์‹คํ–‰ ๊ฒฐ๊ณผ๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•ด์ค๋‹ˆ๋‹ค. ๋˜ํ•œ, ์ด๋“ค์€ ์ž‘์„ฑํ•œ ์ฝ”๋“œ๋ฅผ ๋‹ค๋ฅธ ์‚ฌ๋žŒ๊ณผ ๊ณต์œ ํ•˜๊ณ  ํ˜‘์—…ํ•˜๋Š” ๊ธฐ๋Šฅ๋„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

    ์ด๋“ค ํ”Œ๋žซํผ์˜ ํ•ต์‹ฌ์ ์ธ ๊ธฐ๋Šฅ์„ ๋ช‡ ๊ฐ€์ง€ ์ •๋ฆฌํ•ด ๋ณด์•˜์Šต๋‹ˆ๋‹ค:

    • ์‹ค์‹œ๊ฐ„ ์ฝ”๋“œ ์‹คํ–‰๊ณผ ๊ฒฐ๊ณผ ํ™•์ธ
    • ์ฝ”๋“œ ๊ณต์œ ์™€ ํ˜‘์—…
    • ๋‹ค์–‘ํ•œ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์™€ ํ”„๋ ˆ์ž„์›Œํฌ ์ง€์›

    ์ด์ œ jsFiddle์„ ์˜ˆ์‹œ๋กœ ๋“ค์–ด ์ข€ ๋” ์ž์„ธํžˆ ์•Œ์•„๋ณด๋„๋ก ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.

    jsFiddle ํ™œ์šฉ ๊ฐ€์ด๋“œ

    jsFiddle์€ ์›น ๋ธŒ๋ผ์šฐ์ €์—์„œ ์ง์ ‘ HTML, CSS, JavaScript ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•˜๊ณ  ๊ฒฐ๊ณผ๋ฅผ ์‹ค์‹œ๊ฐ„์œผ๋กœ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋Š” ํ”Œ๋žซํผ์ž…๋‹ˆ๋‹ค. ์ฃผ์š” ๊ธฐ๋Šฅ์— ๋Œ€ํ•ด ์ƒ์„ธํžˆ ์•Œ์•„๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

    1. ์ฝ”๋“œ ์‹คํ–‰ ๋ฐ ํ™•์ธ

    jsFiddle์˜ ์ธํ„ฐํŽ˜์ด์Šค๋Š” HTML, CSS, JavaScript ์ž…๋ ฅ ์˜์—ญ๊ณผ ์‹คํ–‰ ๊ฒฐ๊ณผ๋ฅผ ๋ณด์—ฌ์ฃผ๋Š” ์ฐฝ์œผ๋กœ ๋‚˜๋ˆ ์ ธ ์žˆ์Šต๋‹ˆ๋‹ค. ์ฝ”๋“œ๋ฅผ ํ•ด๋‹น ์˜์—ญ์— ์ž‘์„ฑํ•˜๊ณ  ์ƒ๋‹จ์˜ 'Run' ๋ฒ„ํŠผ์„ ํด๋ฆญํ•˜๋ฉด, ์šฐ์ธก ํ•˜๋‹จ์˜ ๊ฒฐ๊ณผ ์ฐฝ์—์„œ ๋ฐ”๋กœ ๊ฒฐ๊ณผ๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    2. ์ฝ”๋“œ ๊ณต์œ 

    jsFiddle๋Š” ์ž‘์„ฑํ•œ ์ฝ”๋“œ๋ฅผ ๋‹ค๋ฅธ ์‚ฌ๋žŒ๊ณผ ์‰ฝ๊ฒŒ ๊ณต์œ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•œ ํ›„ ์ƒ๋‹จ์˜ 'Save' ๋ฒ„ํŠผ์„ ํด๋ฆญํ•˜๋ฉด, ์ž‘์„ฑํ•œ ์ฝ”๋“œ๊ฐ€ ํ˜„์žฌ URL์— ์ €์žฅ๋ฉ๋‹ˆ๋‹ค. ์ด URL์„ ๋‹ค๋ฅธ ์‚ฌ๋žŒ์—๊ฒŒ ๊ณต์œ ํ•˜๋ฉด, ๊ทธ๋“ค์€ ์ž‘์„ฑํ•œ ์ฝ”๋“œ์™€ ๊ทธ ๊ฒฐ๊ณผ๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ๋‹ค๋ฅธ ๋ฐฉ๋ฒ•์œผ๋กœ๋Š” 'Embed' ๊ธฐ๋Šฅ์„ ์ด์šฉํ•˜์—ฌ ์ฝ”๋“œ๋ฅผ ๊ณต์œ ํ•˜๋Š” ๋ฐฉ๋ฒ•์ด ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Š” iframe์„ ์ด์šฉํ•œ ์ฝ”๋“œ ๊ณต์œ ๋กœ, HTML ์ฝ”๋“œ๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ํ™˜๊ฒฝ์—์„œ ํŠนํžˆ ์œ ์šฉํ•˜๋ฉฐ, ์‚ฌ์šฉ์ž์—๊ฒŒ ๋ณด๋‹ค ํŽธ๋ฆฌํ•˜๊ณ  ๊น”๋”ํ•œ ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ์ œ๊ณตํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

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

    3. ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ๋ฐ ํ”„๋ ˆ์ž„์›Œํฌ ์ง€์›

    jsFiddle์€ JavaScript ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ React, TypeScript, Vue, jQuery ๋“ฑ ๋‹ค์–‘ํ•œ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ๋ฐ ํ”„๋ ˆ์ž„์›Œํฌ๋ฅผ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ๊ฐœ๋ฐœ์ž๋“ค์€ ํ•„์š”์— ๋”ฐ๋ผ ๋‹ค์–‘ํ•œ ์–ธ์–ด์™€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์ž์œ ๋กญ๊ฒŒ ํ™œ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ํ™œ์šฉ ์‚ฌ๋ก€

    jsFiddle, codePen, CodeSandbox ๋“ฑ์„ ์‚ฌ์šฉํ•˜๋Š” ๋ช‡ ๊ฐ€์ง€ ๊ฒฝ์šฐ์— ๋Œ€ํ•ด ์‚ดํŽด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

    • ๋น ๋ฅธ ํ”„๋กœํ† ํƒ€์ดํ•‘: ์›น ๊ฐœ๋ฐœ์„ ํ•˜๋‹ค ๋ณด๋ฉด ๊ฐ„๋‹จํ•œ ์•„์ด๋””์–ด๋‚˜ ๋ฌธ์ œ ํ•ด๊ฒฐ์„ ์œ„ํ•ด ๋น ๋ฅด๊ฒŒ ํ”„๋กœํ† ํƒ€์ž…์„ ๋งŒ๋“ค์–ด ๋ณด๊ณ  ์‹ถ์„ ๋•Œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Ÿด ๋•Œ ์ด๋Ÿฐ ํˆด๋“ค์„ ํ™œ์šฉํ•˜๋ฉด, ๋กœ์ปฌ ํ™˜๊ฒฝ์—์„œ ๋ณต์žกํ•œ ๊ฐœ๋ฐœ ํ™˜๊ฒฝ์„ ์„ค์ •ํ•  ํ•„์š” ์—†์ด ์›น ๋ธŒ๋ผ์šฐ์ €์—์„œ ๋ฐ”๋กœ ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•˜๊ณ  ๊ฒฐ๊ณผ๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
    • ์ฝ”๋“œ ์˜ˆ์ œ ๊ณต์œ : ๋ธ”๋กœ๊ทธ ๊ธ€์ด๋‚˜ ๋ฌธ์„œ์— ์ฝ”๋“œ ์˜ˆ์ œ๋ฅผ ๊ณต์œ ํ•˜๊ณ  ์‹ถ์„ ๋•Œ, ์ฝ”๋“œ๋ฅผ ๋ณต์‚ฌํ•˜์—ฌ ๋ถ™์—ฌ๋„ฃ๋Š” ๋Œ€์‹ ์— ์ด๋Ÿฐ ํˆด๋“ค์„ ์‚ฌ์šฉํ•˜์—ฌ ๊ณต์œ ํ•˜๋ฉด, ๋…์ž๋“ค์ด ํ•ด๋‹น ์ฝ”๋“œ๋ฅผ ์ง์ ‘ ์‹คํ–‰ํ•ด ๋ณด๊ณ  ๊ฒฐ๊ณผ๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
    • ์ฝ”๋“œ ๋ฆฌ๋ทฐ์™€ ํ”ผ๋“œ๋ฐฑ: ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•˜๊ณ  ๋‹ค๋ฅธ ์‚ฌ๋žŒ์—๊ฒŒ ๋ฆฌ๋ทฐ๋ฅผ ๋ฐ›๊ณ  ์‹ถ์„ ๋•Œ, ์ฝ”๋“œ๋ฅผ ์ด๋Ÿฐ ํˆด๋“ค๋กœ ๊ณต์œ ํ•˜๋ฉด ๋‹ค๋ฅธ ์‚ฌ๋žŒ์ด ์›น ๋ธŒ๋ผ์šฐ์ €์—์„œ ๋ฐ”๋กœ ์ฝ”๋“œ๋ฅผ ํ™•์ธํ•˜๊ณ  ์‹คํ–‰ ๊ฒฐ๊ณผ๋ฅผ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ, 'Collaborate' ๊ธฐ๋Šฅ์„ ์ด์šฉํ•˜์—ฌ ์‹ค์‹œ๊ฐ„์œผ๋กœ ๋‹ค๋ฅธ ์‚ฌ๋žŒ๊ณผ ํ•จ๊ป˜ ์ฝ”๋“œ๋ฅผ ์ˆ˜์ •ํ•˜๊ณ ํ”ผ๋“œ๋ฐฑ์„ ์ฃผ๊ณ ๋ฐ›์„ ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค.
    • ํ•™์Šต: ํŠน์ • ์›น ๊ฐœ๋ฐœ ๊ธฐ์ˆ ์„ ๋ฐฐ์šฐ๊ณ  ์‹ถ์„ ๋•Œ, ์ด๋Ÿฐ ํˆด๋“ค์„ ํ†ตํ•ด ์ž‘์„ฑ๋œ ์ˆ˜๋งŽ์€ ์ฝ”๋“œ ์˜ˆ์ œ๋ฅผ ์ฐพ์•„๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ํ•ด๋‹น ๊ธฐ์ˆ ์„ ์–ด๋–ป๊ฒŒ ์‚ฌ์šฉํ•˜๋Š”์ง€ ๋น ๋ฅด๊ฒŒ ๋ฐฐ์šธ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    jsFiddle์€ HTML, CSS, JavaScript๋ฅผ ์ด์šฉํ•ด ์›น ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•˜๊ณ  ํ…Œ์ŠคํŠธํ•˜๊ธฐ์— ์•„์ฃผ ์ข‹์€ ๋„๊ตฌ์ž…๋‹ˆ๋‹ค.

    1. ์ƒˆ๋กœ์šด fiddle ๋งŒ๋“ค๊ธฐ
      • ๋ฉ”์ธ ํŽ˜์ด์ง€์—์„œ ์™ผ์ชฝ ์ƒ๋‹จ์— ์žˆ๋Š” "+ New Fiddle" ๋ฒ„ํŠผ์„ ํด๋ฆญํ•˜์—ฌ ์ƒˆ๋กœ์šด fiddle์„ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค.
    2. HTML, CSS, JavaScript ์ž‘์„ฑ
      • ํ…์ŠคํŠธ ํŽธ์ง‘๊ธฐ ์ฐฝ์—์„œ HTML, CSS, ๊ทธ๋ฆฌ๊ณ  JavaScript๋ฅผ ์ž‘์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ฐ๊ฐ์˜ ์ฐฝ์€ ํ•ด๋‹น ์–ธ์–ด์˜ ์ฝ”๋“œ๋ฅผ ์ž…๋ ฅํ•  ์ˆ˜ ์žˆ๋Š” ๊ณต๊ฐ„์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.
    3. ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์™€ ํ”„๋ ˆ์ž„์›Œํฌ ์ถ”๊ฐ€
      • "JavaScript" ์ฐฝ ์˜ค๋ฅธ์ชฝ ์ƒ๋‹จ์˜ ํ†ฑ๋‹ˆ๋ฐ”ํ€ด ์•„์ด์ฝ˜์„ ํด๋ฆญํ•˜์—ฌ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ๋˜๋Š” ํ”„๋ ˆ์ž„์›Œํฌ๋ฅผ ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, jQuery, React, Vue.js ๋“ฑ ๋‹ค์–‘ํ•œ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์™€ ํ”„๋ ˆ์ž„์›Œํฌ๋ฅผ ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
    4. ๊ฒฐ๊ณผ ํ™•์ธ
      • ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•˜๋ฉด ์ž๋™์œผ๋กœ ๊ฒฐ๊ณผ๊ฐ€ ์•„๋ž˜์ชฝ "Result" ์ฐฝ์— ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค. "Run" ๋ฒ„ํŠผ์„ ํด๋ฆญํ•˜์—ฌ ํ˜„์žฌ์˜ ์ฝ”๋“œ๋ฅผ ์‹คํ–‰ํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค.
    5. fiddle ์ €์žฅ ๋ฐ ๊ณต์œ 
      • "Save" ๋ฒ„ํŠผ์„ ํด๋ฆญํ•˜๋ฉด ์ž‘์„ฑํ•œ ์ฝ”๋“œ๋ฅผ ์ €์žฅํ•˜๊ณ  ๊ณ ์œ ํ•œ URL์„ ์ƒ์„ฑํ•˜์—ฌ ๋‹ค๋ฅธ ์‚ฌ๋žŒ๊ณผ ๊ณต์œ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ์ด๋ ‡๊ฒŒ ์ž‘์„ฑํ•˜๊ณ  ํ…Œ์ŠคํŠธํ•œ ์ฝ”๋“œ๋Š” ๋ธ”๋กœ๊ทธ๋‚˜ ์›น์‚ฌ์ดํŠธ์— ๊ณต์œ ํ•˜๊ธฐ ์‰ฝ์Šต๋‹ˆ๋‹ค.

    "Embed" ์˜ต์…˜์„ ํ†ตํ•ด iframe ํƒœ๊ทธ๋ฅผ ์ƒ์„ฑํ•˜์—ฌ ์›น์‚ฌ์ดํŠธ์— ์‚ฝ์ž…ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

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

    ํ‹ฐ์Šคํ† ๋ฆฌ JSFiddle ์—ฐ๋™์„ ์„ค๋ช…ํ–ˆ์ง€๋งŒ, ํ‹ฐ์Šคํ† ๋ฆฌ codepen ์—ฐ๋™ ๋‹น์—ฐํžˆ ๋˜๊ตฌ์š”.

    ํ‹ฐ์Šคํ† ๋ฆฌ codesandbox ์—ฐ๋™๋„ ๋‹น์—ฐํžˆ ๋ฉ๋‹ˆ๋‹ค.

    jsFiddle์€ ์ฝ”๋“œ์˜ ์‹คํ–‰ ๊ฒฐ๊ณผ๋ฅผ ์‹ค์‹œ๊ฐ„์œผ๋กœ ํ™•์ธํ•˜๊ณ  ๊ณต์œ ํ•˜๋Š”๋ฐ ๋งค์šฐ ์œ ์šฉํ•œ ๋„๊ตฌ์ด์ง€๋งŒ, ๊ฒ€์ƒ‰์—”์ง„ ์ตœ์ ํ™”(SEO)์—๋Š” ์•ฝ๊ฐ„์˜ ์ œํ•œ์ด ์žˆ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ ์ด์œ ๋Š” iframe์— ๋“ค์–ด ์žˆ๋Š” ์†Œ์Šค ์ฝ”๋“œ ๋ถ€๋ถ„์ด ๊ฒ€์ƒ‰์—”์ง„์— ์˜ํ•ด ์ˆ˜์ง‘๋˜์ง€ ์•Š์„ ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค. ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ์ถ”๊ฐ€์ ์œผ๋กœ ์ฝ”๋“œ๋ธ”๋ก์„ ์ด์šฉํ•ด ์ค‘์š”ํ•œ ์ฝ”๋“œ ๋ถ€๋ถ„์„ ๊ฐ•์กฐํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ์ด๋Ÿฐ ํŠน์„ฑ ๋•Œ๋ฌธ์—, jsFiddle์€ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ํ•™์Šต์ด๋‚˜ ํŠœํ† ๋ฆฌ์–ผ ์ž‘์„ฑ, ๋น ๋ฅธ ํ”„๋กœํ† ํƒ€์ž…, ํ˜‘์—… ๋„๊ตฌ ๋“ฑ์œผ๋กœ ๋„๋ฆฌ ํ™œ์šฉ๋˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

    jsFiddle ์™ธ์—๋„ CodePen, CodeSandbox ๋“ฑ๊ณผ ๊ฐ™์€ ํˆด๋“ค๋„ ์กด์žฌํ•ฉ๋‹ˆ๋‹ค.

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

    codePenํ™”๋ฉด

    ์˜ˆ๋ฅผ ๋“ค์–ด, CodePen์€ ์›Œ๋“œํ”„๋ ˆ์Šค ์ˆ์ฝ”๋“œ๋ฅผ ์ œ๊ณตํ•˜๋ฉฐ, ์ธํ„ฐํŽ˜์ด์Šค๊ฐ€ ๋”์šฑ ์ง๊ด€์ ์ด๋ผ๋Š” ์žฅ์ ์ด ์žˆ์Šต๋‹ˆ๋‹ค.

    See the Pen Untitled by ์กฐํ˜„์ • (@apqveohd-the-sasster) on CodePen.

    ๋ฐ˜๋ฉด์—, jsFiddle์€ ์—ฌ๋Ÿฌ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์™€ ํ”„๋ ˆ์ž„์›Œํฌ๋ฅผ ์‰ฝ๊ฒŒ ์ถ”๊ฐ€ํ•˜๊ณ  ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ์žฅ์ ์ด ์žˆ์Šต๋‹ˆ๋‹ค.

    ์–ด๋–ค ํˆด์„ ์‚ฌ์šฉํ• ์ง€๋Š” ๊ฐœ์ธ์˜ ์ทจํ–ฅ๊ณผ ์ž‘์—… ์š”๊ตฌ์‚ฌํ•ญ์— ๋”ฐ๋ผ ๋‹ฌ๋ผ์งˆ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ๋งˆ์ง€๋ง‰์œผ๋กœ, ์œ„์—์„œ ์–ธ๊ธ‰๋œ ํ”Œ๋žซํผ๋“ค์€ ๋ชจ๋‘ ํ”„๋ก ํŠธ์—”๋“œ ๊ฐœ๋ฐœ์— ์ค‘์ ์„ ๋‘๊ณ  ์žˆ์ง€๋งŒ, ๋ฐฑ์—”๋“œ ๊ฐœ๋ฐœ์— ๋Œ€ํ•œ ํ…Œ์ŠคํŠธ ํ™˜๊ฒฝ์„ ์ œ๊ณตํ•˜๋Š” ํ”Œ๋žซํผ์œผ๋กœ๋Š” Repl.it, Glitch ๋“ฑ์ด ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Ÿฐ ํ”Œ๋žซํผ๋“ค์€ ์„œ๋ฒ„ ์‚ฌ์ด๋“œ JavaScript(Node.js), Python, Ruby ๋“ฑ ๋‹ค์–‘ํ•œ ์–ธ์–ด๋ฅผ ์ง€์›ํ•˜๋ฉฐ, ์‹ค์‹œ๊ฐ„ ํ˜‘์—… ๊ธฐ๋Šฅ๋„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

    ์ •๋ฆฌ

    ๋‹ค์Œ์˜ ํ‘œ๋Š” ์„ธ ํ”Œ๋žซํผ์˜ ์ฃผ์š” ํŠน์„ฑ์„ ๋น„๊ตํ•œ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

    ํ”Œ๋žซํผ ์‹ค์‹œ๊ฐ„ ์ฝ”๋“œ ์‹คํ–‰ ์ฝ”๋“œ ๊ณต์œ  ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ/ํ”„๋ ˆ์ž„์›Œํฌ ์ง€์› ํ˜‘์—…
    codePen O O O O
    CodeSandbox O O O O
    jsFiddle O O O O

    ๋งˆ์ง€๋ง‰์œผ๋กœ, codePen, CodeSandbox, jsFiddle์€ ์›น ๊ฐœ๋ฐœ์— ์žˆ์–ด ์•„์ฃผ ์œ ์šฉํ•œ ๋„๊ตฌ์ž…๋‹ˆ๋‹ค. ์ด๋Ÿฐ ํ”Œ๋žซํผ๋“ค์„ ํ†ตํ•ด ์›น ๊ฐœ๋ฐœ ๊ณผ์ •์„ ๋ณด๋‹ค ๊ฐ„๋‹จํ•˜๊ณ  ํšจ์œจ์ ์œผ๋กœ ๋งŒ๋“ค ์ˆ˜ ์žˆ์œผ๋ฉฐ, ๊ฐœ๋ฐœ ๊ณต๋™์ฒด์™€์˜ ํ˜‘์—…๊ณผ ์ง€์‹ ๊ณต์œ ์—๋„ ํฐ ๋„์›€์„ ์ค๋‹ˆ๋‹ค. ์ด๋“ค์„ ํ™œ์šฉํ•ด๋ณด์‹œ๊ณ , ์›น ๊ฐœ๋ฐœ ๊ณผ์ •์„ ๋”์šฑ ํ’์š”๋กญ๊ฒŒ ๋งŒ๋“œ๋Š” ๋ฐ ๋„์›€์ด ๋˜๊ธธ ๋ฐ”๋ž๋‹ˆ๋‹ค. ๋‹ค์Œ์—๋Š” ์ด๋“ค ๋„๊ตฌ๋ฅผ ์ด์šฉํ•œ ์ข€ ๋” ์‹ฌํ™”๋œ ํ™œ์šฉ ๋ฐฉ๋ฒ•์— ๋Œ€ํ•ด ์•Œ์•„๋ณด๋„๋ก ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.

    ์ด ํฌ์ŠคํŒ…์ด ๋„์›€์ด ๋˜์—ˆ๊ธธ ๋ฐ”๋ผ๋ฉฐ, ์—ฌ๋Ÿฌ๋ถ„์˜ ํ›Œ๋ฅญํ•œ ์›น ๊ฐœ๋ฐœ ์—ฌ์ •์„ ์‘์›ํ•ฉ๋‹ˆ๋‹ค.

    ๋ฐ˜์‘ํ˜•

    ๋Œ“๊ธ€