๋ชฉ์ฐจ
ํ๋ก ํธ์๋ ๊ฐ๋ฐ ๋๊ตฌ ํ์: 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๋ฅผ ์ด์ฉํด ์น ์ฝ๋๋ฅผ ์์ฑํ๊ณ ํ ์คํธํ๊ธฐ์ ์์ฃผ ์ข์ ๋๊ตฌ์ ๋๋ค.
- ์๋ก์ด fiddle ๋ง๋ค๊ธฐ
- ๋ฉ์ธ ํ์ด์ง์์ ์ผ์ชฝ ์๋จ์ ์๋ "+ New Fiddle" ๋ฒํผ์ ํด๋ฆญํ์ฌ ์๋ก์ด fiddle์ ์์ฑํฉ๋๋ค.
- HTML, CSS, JavaScript ์์ฑ
- ํ ์คํธ ํธ์ง๊ธฐ ์ฐฝ์์ HTML, CSS, ๊ทธ๋ฆฌ๊ณ JavaScript๋ฅผ ์์ฑํ ์ ์์ต๋๋ค. ๊ฐ๊ฐ์ ์ฐฝ์ ํด๋น ์ธ์ด์ ์ฝ๋๋ฅผ ์ ๋ ฅํ ์ ์๋ ๊ณต๊ฐ์ ์ ๊ณตํฉ๋๋ค.
- ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ ํ๋ ์์ํฌ ์ถ๊ฐ
- "JavaScript" ์ฐฝ ์ค๋ฅธ์ชฝ ์๋จ์ ํฑ๋๋ฐํด ์์ด์ฝ์ ํด๋ฆญํ์ฌ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ๋๋ ํ๋ ์์ํฌ๋ฅผ ์ถ๊ฐํ ์ ์์ต๋๋ค. ์๋ฅผ ๋ค์ด, jQuery, React, Vue.js ๋ฑ ๋ค์ํ ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ ํ๋ ์์ํฌ๋ฅผ ์ถ๊ฐํ ์ ์์ต๋๋ค.
- ๊ฒฐ๊ณผ ํ์ธ
- ์ฝ๋๋ฅผ ์์ฑํ๋ฉด ์๋์ผ๋ก ๊ฒฐ๊ณผ๊ฐ ์๋์ชฝ "Result" ์ฐฝ์ ํ์๋ฉ๋๋ค. "Run" ๋ฒํผ์ ํด๋ฆญํ์ฌ ํ์ฌ์ ์ฝ๋๋ฅผ ์คํํ ์๋ ์์ต๋๋ค.
- fiddle ์ ์ฅ ๋ฐ ๊ณต์
- "Save" ๋ฒํผ์ ํด๋ฆญํ๋ฉด ์์ฑํ ์ฝ๋๋ฅผ ์ ์ฅํ๊ณ ๊ณ ์ ํ URL์ ์์ฑํ์ฌ ๋ค๋ฅธ ์ฌ๋๊ณผ ๊ณต์ ํ ์ ์์ต๋๋ค.
์ด๋ ๊ฒ ์์ฑํ๊ณ ํ ์คํธํ ์ฝ๋๋ ๋ธ๋ก๊ทธ๋ ์น์ฌ์ดํธ์ ๊ณต์ ํ๊ธฐ ์ฝ์ต๋๋ค.
"Embed" ์ต์ ์ ํตํด iframe ํ๊ทธ๋ฅผ ์์ฑํ์ฌ ์น์ฌ์ดํธ์ ์ฝ์ ํ ์ ์์ต๋๋ค.
์ด๋ฌํ ๋ฐฉ์์ผ๋ก jsFiddle์ ์ฝ๋๋ฅผ ์๊ฐ์ ์ผ๋ก ๊ณต์ ํ๊ณ ๊ฒฐ๊ณผ๋ฅผ ์ค์๊ฐ์ผ๋ก ๋ณผ ์ ์์ด ํ์ต ๋๊ตฌ๋ ํ๋กํ ํ์ดํ ๋๊ตฌ๋ก๋ ํ์ฉ๋ ์ ์์ต๋๋ค.
ํฐ์คํ ๋ฆฌ JSFiddle ์ฐ๋์ ์ค๋ช ํ์ง๋ง, ํฐ์คํ ๋ฆฌ codepen ์ฐ๋ ๋น์ฐํ ๋๊ตฌ์.
ํฐ์คํ ๋ฆฌ codesandbox ์ฐ๋๋ ๋น์ฐํ ๋ฉ๋๋ค.
jsFiddle์ ์ฝ๋์ ์คํ ๊ฒฐ๊ณผ๋ฅผ ์ค์๊ฐ์ผ๋ก ํ์ธํ๊ณ ๊ณต์ ํ๋๋ฐ ๋งค์ฐ ์ ์ฉํ ๋๊ตฌ์ด์ง๋ง, ๊ฒ์์์ง ์ต์ ํ(SEO)์๋ ์ฝ๊ฐ์ ์ ํ์ด ์์ ์ ์์ต๋๋ค. ๊ทธ ์ด์ ๋ iframe์ ๋ค์ด ์๋ ์์ค ์ฝ๋ ๋ถ๋ถ์ด ๊ฒ์์์ง์ ์ํด ์์ง๋์ง ์์ ์ ์๊ธฐ ๋๋ฌธ์ ๋๋ค. ์ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด ์ถ๊ฐ์ ์ผ๋ก ์ฝ๋๋ธ๋ก์ ์ด์ฉํด ์ค์ํ ์ฝ๋ ๋ถ๋ถ์ ๊ฐ์กฐํ๋ ๋ฐฉ๋ฒ์ ์ฌ์ฉํ ์ ์์ต๋๋ค.
์ด๋ฐ ํน์ฑ ๋๋ฌธ์, jsFiddle์ ํ๋ก๊ทธ๋๋ฐ ํ์ต์ด๋ ํํ ๋ฆฌ์ผ ์์ฑ, ๋น ๋ฅธ ํ๋กํ ํ์ , ํ์ ๋๊ตฌ ๋ฑ์ผ๋ก ๋๋ฆฌ ํ์ฉ๋๊ณ ์์ต๋๋ค.
jsFiddle ์ธ์๋ CodePen, CodeSandbox ๋ฑ๊ณผ ๊ฐ์ ํด๋ค๋ ์กด์ฌํฉ๋๋ค.
์ด๋ค์ ๋ชจ๋ ์น์์ ์ค์๊ฐ์ผ๋ก ์ฝ๋๋ฅผ ์์ฑํ๊ณ ํ ์คํธํ ์ ์๋ ํ๊ฒฝ์ ์ ๊ณตํ์ง๋ง, ๊ฐ ํ๋ซํผ์ ์์ฒด์ ์ธ ํน์ง๊ณผ ์ฅ๋จ์ ์ ๊ฐ์ง๊ณ ์์ต๋๋ค.
์๋ฅผ ๋ค์ด, 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์ ์น ๊ฐ๋ฐ์ ์์ด ์์ฃผ ์ ์ฉํ ๋๊ตฌ์ ๋๋ค. ์ด๋ฐ ํ๋ซํผ๋ค์ ํตํด ์น ๊ฐ๋ฐ ๊ณผ์ ์ ๋ณด๋ค ๊ฐ๋จํ๊ณ ํจ์จ์ ์ผ๋ก ๋ง๋ค ์ ์์ผ๋ฉฐ, ๊ฐ๋ฐ ๊ณต๋์ฒด์์ ํ์ ๊ณผ ์ง์ ๊ณต์ ์๋ ํฐ ๋์์ ์ค๋๋ค. ์ด๋ค์ ํ์ฉํด๋ณด์๊ณ , ์น ๊ฐ๋ฐ ๊ณผ์ ์ ๋์ฑ ํ์๋กญ๊ฒ ๋ง๋๋ ๋ฐ ๋์์ด ๋๊ธธ ๋ฐ๋๋๋ค. ๋ค์์๋ ์ด๋ค ๋๊ตฌ๋ฅผ ์ด์ฉํ ์ข ๋ ์ฌํ๋ ํ์ฉ ๋ฐฉ๋ฒ์ ๋ํด ์์๋ณด๋๋ก ํ๊ฒ ์ต๋๋ค.
์ด ํฌ์คํ ์ด ๋์์ด ๋์๊ธธ ๋ฐ๋ผ๋ฉฐ, ์ฌ๋ฌ๋ถ์ ํ๋ฅญํ ์น ๊ฐ๋ฐ ์ฌ์ ์ ์์ํฉ๋๋ค.
๋๊ธ