![]() |
| ์ปค์ AI ์ฑํ ๊ธฐ๋ฅ์ผ๋ก ์ฝ๋ ๋ถ์ |
"์ด ์ฝ๋ ์ด๋ป๊ฒ ์ง์ผ ํ์ง?", "์ด ๋ฒ๊ทธ๋ ๋์ฒด ์ด๋์ ์๊ธด ๊ฑฐ์ผ?", "๋งค๋ฒ ChatGPT ์ฐฝ ์ด์ด์ ๋ฌผ์ด๋ณด๊ธฐ ๊ท์ฐฎ๋ค..." ๐ฉ ๊ฐ๋ฐ์๋ผ๋ฉด ๋๊ตฌ๋ ์ฝ๋ฉ์ ํ๋ค๊ฐ ๋ง๋งํจ๊ณผ ๋ต๋ตํจ์ ๋๋ผ๋ ์๊ฐ์ด ์์ต๋๋ค. ์๋ง์ ํ์ผ์ ๋๋๋ค๋ฉฐ ๋งฅ๋ฝ์ ํ์ ํ๊ณ , ๋ฐ๋ณต์ ์ธ ๋ณด์ผ๋ฌํ๋ ์ดํธ ์ฝ๋๋ฅผ ์์ฑํ๋ ์ผ์ ๋๋ก ์ฐฝ์์ ์ธ ์์ ์ ๋ฐฉํดํ๊ธฐ๋ ํ์ฃ .
๋ด ์ฝ๋๋ฒ ์ด์ค์ ์ง์ ๋ํํ๊ธฐ: 'AI ์ฑํ (๋จ์ถํค: Ctrl+L)' ๐ฌ์ปค์์ ๊ฐ์ฅ ๊ธฐ๋ณธ์ ์ด๋ฉด์๋ ๊ฐ๋ ฅํ ๊ธฐ๋ฅ์ ๋ฐ๋ก ์๋ํฐ ๋ด์ ํตํฉ๋ AI ์ฑํ ๊ธฐ๋ฅ์ ๋๋ค. ๋ ์ด์ ๋ธ๋ผ์ฐ์ ์ฐฝ์ ์ด๊ณ ChatGPT์ ์ฝ๋๋ฅผ ๋ณต์ฌ-๋ถ์ฌ๋ฃ๊ธฐ ํ ํ์๊ฐ ์์ต๋๋ค. ๋ฌด์์ด ํน๋ณํ๊ฐ?: ์ปจํ ์คํธ ์ธ์: ๋จ์ํ ์ผ๋ฐ์ ์ธ ์ง๋ฌธ์ ๋ตํ๋ ๊ฒ์ ๋์ด, ํ์ฌ ๋ด๊ฐ ์์ ์ค์ธ ํ์ผ์ด๋ ์ ํํ ์ฝ๋ ๋ธ๋ก์ ๋งฅ๋ฝ์ ์๋ฒฝํ๊ฒ ์ดํดํ๊ณ ๋ํํฉ๋๋ค.๋ค์ํ ์ง๋ฌธ ๊ฐ๋ฅ: ์ฝ๋ ์ค๋ช , ๋ฆฌํฉํ ๋ง ์์ด๋์ด, ๋ฒ๊ทธ ์์ธ ๋ถ์, ํ ์คํธ ์ผ์ด์ค ์์ฑ ๋ฑ ๊ฐ๋ฐ๊ณผ ๊ด๋ จ๋ ๊ฑฐ์ ๋ชจ๋ ์ง๋ฌธ์ ํ ์ ์์ต๋๋ค.๋น ๋ฅธ ์๋ต ๋ฐ ์ ์ฉ: ์ฑํ ์ฐฝ์์ ์ ์๋ ์ฝ๋๋ฅผ ํด๋ฆญ ํ ๋ฒ์ผ๋ก ๋ฐ๋ก ํ์ฌ ํ์ผ์ ์ ์ฉํ๊ฑฐ๋, ์๋ก์ด ํ์ผ๋ก ๋ง๋ค ์ ์์ต๋๋ค.
ํ์ฉ ์์: ํน์ ํจ์๋ฅผ ๋๋๊ทธํ์ฌ ์ ํํ ํ, "์ด ํจ์์ ์๊ฐ ๋ณต์ก๋๋ฅผ ์๋ ค์ค." "์ด ์ปดํฌ๋ํธ๋ฅผ React Hooks๋ฅผ ์ฌ์ฉํด์ ๋ฆฌํฉํ ๋ง ํด์ค." "์ด ์ฝ๋์์ ๋ฐ์ํ ์ ์๋ ์ ์ฌ์ ์ธ ์๋ฌ๋ ๋ญ๊ฐ ์์๊น?"
Pro Tip: ์ฐ์ธก ์๋จ์ ์ค์ ์์ GPT-4o, Claude 3 Opus ๋ฑ ๋ ๊ฐ๋ ฅํ ๋ชจ๋ธ์ ์ ํํ์ฌ ์ง๋ฌธ์ ์ง์ ๋์ผ ์ ์์ต๋๋ค. (์ ๋ฃ ํ๋ ํ์)
AI์๊ฒ ์ง์ ์ฝ๋ ์์ /์์ฑ ์ํค๊ธฐ: '์ธ๋ผ์ธ ์๋ํ (๋จ์ถํค: Ctrl+K)' ✍️์ฑํ ์ ํตํด ์์ด๋์ด๋ฅผ ์ป๋ ๊ฒ์ ๋์ด, AI์๊ฒ ์ง์ ์ฝ๋๋ฅผ ์์ฑํ๊ฑฐ๋ ์์ ํ๋๋ก ์ง์ํ ์ ์๋ ๊ธฐ๋ฅ์ ๋๋ค. '์๊ฐ์ ์ฝ๋๋ก' ๋ฐ๊ฟ์ฃผ๋ ๋ง๋ฒ ๊ฐ์ ๊ฒฝํ์ ์ ๊ณตํฉ๋๋ค. ๋ฌด์์ด ํน๋ณํ๊ฐ?: ์ฆ๊ฐ์ ์ธ ์ฝ๋ ์์ฑ: ์ฃผ์์ด๋ ๋น ์ค์ ์ํ๋ ๊ธฐ๋ฅ(์: "// ์ฌ์ฉ์ ์ ๋ณด๋ฅผ ๋ฐ์์ค๋ API ํจ์ ๋ง๋ค์ด์ค")์ ์ค๋ช ํ๊ณ Ctrl+K๋ฅผ ๋๋ฅด๋ฉด, AI๊ฐ ์ฆ์ ํด๋น ์ฝ๋๋ฅผ ์์ฑํด์ค๋๋ค.์ ๊ตํ ์ฝ๋ ์์ : ์์ ํ๊ณ ์ถ์ ์ฝ๋ ๋ธ๋ก์ ์ ํํ๊ณ Ctrl+K๋ฅผ ๋๋ฅธ ํ, "์ด ์ฝ๋๋ฅผ try-catch ๋ฌธ์ผ๋ก ๊ฐ์ธ์ค" ๋๋ "์ด ๋ถ๋ถ์ ์ฃผ์์ ๋ฌ์์ค"์ ๊ฐ์ด ๊ตฌ์ฒด์ ์ธ ์ง์๋ฅผ ๋ด๋ฆฌ๋ฉด AI๊ฐ ๊ทธ๋๋ก ์์ ํฉ๋๋ค.์์ฐ์ด ๊ธฐ๋ฐ ์ฝ๋ฉ: ๋ณต์กํ ๊ตฌ๋ฌธ ๋์ ์์ฐ์ค๋ฌ์ด ์ธ์ด๋ก ๋ช ๋ น์ ๋ด๋ฆด ์ ์์ด ์ฝ๋ฉ ์๋๊ฐ ๋น์ฝ์ ์ผ๋ก ํฅ์๋ฉ๋๋ค.
ํ์ฉ ์์: // ๋ก๊ทธ์ธ ํผ UI๋ฅผ Tailwind CSS๋ก ๋ง๋ค์ด์ค ์ ๋ ฅ ํ Ctrl+K ๊ธฐ์กด ์ฝ๋ ๋ธ๋ก ์ ํ ํ, "์ด ์ฝ๋๋ฅผ ๋ ๊ฐ๊ฒฐํ๊ฒ ๋ฐ๊ฟ์ค (Make this more concise)" ๋ณ์๋ช ์ ํ ํ, "๋ ์๋ฏธ ์๋ ์ด๋ฆ์ผ๋ก ๋ฐ๊ฟ์ค"
Pro Tip: Ctrl+K๋ฅผ ๋๋ฅด๊ณ ์๋ฌด๊ฒ๋ ์ ๋ ฅํ์ง ์์ ์ฑ 'Accept'๋ฅผ ๋๋ฅด๋ฉด, AI๊ฐ ์ฝ๋ ๋ธ๋ก์ ๋ถ์ํ์ฌ ์์ฒด์ ์ผ๋ก ๊ฐ์ ์์ ์ ์ํ๊ธฐ๋ ํฉ๋๋ค.
ํ๋ก์ ํธ ์ ์ฒด๋ฅผ ์ดํดํ๋ AI: '์ฌ๋ณผ(<code>@</code>)์ ํ์ฉํ ์ปจํ ์คํธ ์ฐธ์กฐ' ๐์ปค์๊ฐ ๋ค๋ฅธ AI ์ฝ๋ฉ ํด๊ณผ ์ฐจ๋ณํ๋๋ ๊ฐ์ฅ ๊ฐ๋ ฅํ ๊ธฐ๋ฅ ์ค ํ๋์ ๋๋ค. ์ด๋ ค์๋ ํ์ผ๋ฟ๋ง ์๋๋ผ, ํ๋ก์ ํธ ์ ์ฒด์ ํ์ผ๊ณผ ์ฌ๋ณผ(ํจ์, ํด๋์ค ๋ฑ)์ AI๊ฐ ์ธ์ ํ๊ฒ ํ ์ ์์ต๋๋ค.๋ฌด์์ด ํน๋ณํ๊ฐ?: ์ ํ๋ ๋์ ๋ต๋ณ: ์ฑํ ์ด๋ ์์ ์์ฒญ ์ @๋ฅผ ์ฌ์ฉํ์ฌ ํน์ ํ์ผ์ด๋ ํจ์๋ฅผ ๋ช ์์ ์ผ๋ก ์ฐธ์กฐํ๋ฉด, AI๊ฐ ํด๋น ๋ด์ฉ์ ๊ธฐ๋ฐ์ผ๋ก ํจ์ฌ ๋ ์ ํํ๊ณ ๋งฅ๋ฝ์ ๋ง๋ ๋ต๋ณ๊ณผ ์ฝ๋๋ฅผ ์ ๊ณตํฉ๋๋ค.๋ณต์กํ ์์ ๊ฐ๋ฅ: "<code>@ApiService.js</code>์ API ๋ช ์ธ๋ฅผ ์ฐธ๊ณ ํด์ <code>@UserProfile.js</code> ์ปดํฌ๋ํธ๋ฅผ ์์ ํด์ค" ์ ๊ฐ์ด ์ฌ๋ฌ ํ์ผ์ ๊ฑธ์น ๋ณต์กํ ๋ฆฌํฉํ ๋ง์ด๋ ๊ธฐ๋ฅ ์ถ๊ฐ๊ฐ ๊ฐ๋ฅํด์ง๋๋ค.์ฝ๋ ํ์ ์๊ฐ ๋จ์ถ: ๋ด๊ฐ ์ง์ ์ฌ๋ฌ ํ์ผ์ ์ด์ด๋ณด๋ฉฐ ๋งฅ๋ฝ์ ํ์ ํ ํ์ ์์ด, AI์๊ฒ ๋งก๊ธธ ์ ์์ด ์ฝ๋ ํ์ ์๊ฐ์ ํ๊ธฐ์ ์ผ๋ก ์ค์ฌ์ค๋๋ค.
ํ์ฉ ์์: ์ฑํ ์ฐฝ์ "<code>@utils/date.js</code>์ ์๋ formatDate ํจ์๋ฅผ ์ฌ์ฉํด์ ์ค๋ ๋ ์ง๋ฅผ 'YYYY-MM-DD' ํ์์ผ๋ก ํ์ํ๋ ์ฝ๋๋ฅผ ์ง์ค." ํน์ ์ฝ๋ ๋ธ๋ก ์ ํ ํ Ctrl+K๋ฅผ ๋๋ฌ "<code>@Button.css</code>์ ์คํ์ผ์ ์ด ์ปดํฌ๋ํธ์ ์ ์ฉํด์ค."
Pro Tip: ์ฑํ ์ฐฝ์์ @๋ฅผ ์ ๋ ฅํ๋ฉด ํ๋ก์ ํธ ๋ด์ ํ์ผ๊ณผ ์ฌ๋ณผ ๋ชฉ๋ก์ด ์๋์ผ๋ก ๋จ๋ฏ๋ก, ์ฝ๊ฒ ์ ํํ์ฌ ์ฐธ์กฐํ ์ ์์ต๋๋ค.
๋ฒ๊ทธ์ ์๋ฌ, AI๊ฐ ์์์ ์ฒ์ฒ: '์๋ ์์ ๋ฐ ๋๋ฒ๊น ' ๐์๋ฌ ๋ฉ์์ง๋ฅผ ๋ง์ฃผํ์ ๋ ๋ ์ด์ ์ข์ ํ ํ์๊ฐ ์์ต๋๋ค. ์ปค์์ AI๋ ์๋ฌ๋ฅผ ๋ถ์ํ๊ณ ํด๊ฒฐ์ฑ ์ ์ ์ํ๋ ํ๋ฅญํ ๋๋ฒ๊น ํํธ๋๊ฐ ๋์ด์ค๋๋ค. ๋ฌด์์ด ํน๋ณํ๊ฐ?: ์ํด๋ฆญ ์๋ฌ ์์ : ์ฝ๋์์ ๋ฐ์ํ ๋ฆฐํธ(Lint) ์๋ฌ๋ ๊ฐ๋จํ ๊ตฌ๋ฌธ ์ค๋ฅ ์์ ๋ง์ฐ์ค๋ฅผ ์ฌ๋ฆฌ๋ฉด ๋ํ๋๋ 'Fix with AI' ๋ฒํผ์ ํด๋ฆญํ์ฌ AI๊ฐ ์๋์ผ๋ก ์ฝ๋๋ฅผ ์์ ํ๋๋ก ํ ์ ์์ต๋๋ค.ํฐ๋ฏธ๋ ์๋ฌ ๋ถ์: ํฐ๋ฏธ๋์ ์ถ๋ ฅ๋ ์๋ฌ ๋ฉ์์ง ์์ 'AI Fix' ๋ฒํผ์ ๋๋ฅด๋ฉด, AI๊ฐ ์๋ฌ์ ์์ธ์ ๋ถ์ํ๊ณ ํด๊ฒฐ ๋ฐฉ๋ฒ์ ์ฑํ ์ฐฝ์ ์ค๋ช ํด์ฃผ๊ฑฐ๋, ๊ด๋ จ ํ์ผ์ ์ด์ด ์์ ์์ ์ ์ํฉ๋๋ค.๋๋ฒ๊น ์๊ฐ ๋จ์ถ: ๋ณต์กํ ์๋ฌ์ ๊ฒฝ์ฐ, ๊ด๋ จ ์ฝ๋๋ฅผ ์ฑํ ์ฐฝ์ ๋ถ์ฌ๋ฃ๊ณ "์ด ์๋ฌ์ ์์ธ์ด ๋ญ๊น?"๋ผ๊ณ ์ง๋ฌธํ๋ฉด, ๋ฌธ์ ํด๊ฒฐ์ ์ค๋ง๋ฆฌ๋ฅผ ๋น ๋ฅด๊ฒ ์ฐพ์ ์ ์์ต๋๋ค.
ํ์ฉ ์์: '๋ณ์๊ฐ ์ ์๋์ง ์์์ต๋๋ค(is not defined)' ์๋ฌ ๋ฐ์ ์, 'AI Fix'๋ก ์๋ import ๊ตฌ๋ฌธ ์ถ๊ฐ 'npm install' ์คํจ ์, ํฐ๋ฏธ๋ ์๋ฌ ๋ถ์์ ํตํด ํธํ์ฑ ๋ฌธ์ ๋ ์์กด์ฑ ์ถฉ๋ ์์ธ ํ์
Pro Tip: 'Fix with AI' ๊ธฐ๋ฅ์ ๊ฐ๋จํ ์ค๋ฅ์ ํจ๊ณผ์ ์ด๋ฉฐ, ๋ณต์กํ ๋ก์ง ์ค๋ฅ๋ ์ฑํ ๊ธฐ๋ฅ์ ํตํด ์ฌ์ธต์ ์ผ๋ก ๋ถ์ํ๋ ๊ฒ์ด ์ข์ต๋๋ค.
๊ท์ฐฎ์ ๋ฌธ์ ์์ ์ ์ด์ ๊ทธ๋ง: ''Doc' ๊ธฐ๋ฅ์ผ๋ก ์๋ ๋ฌธ์ ์์ฑ' ๐์ ์์ฑ๋ ๋ฌธ์๋ ํ์ ๊ณผ ์ ์ง๋ณด์์ ํต์ฌ์ด์ง๋ง, ์ง์ ์์ฑํ๊ธฐ์๋ ๋ฒ๊ฑฐ๋ก์ด ์์ ์ ๋๋ค. ์ปค์๋ ์ด ๋ฌธ์ ์์ฑ ๊ณผ์ ๋ ์๋ํํด์ค๋๋ค. ๋ฌด์์ด ํน๋ณํ๊ฐ?: ๋น ๋ฅธ ์ฃผ์ ๋ฐ Docstring ์์ฑ: ํจ์๋ ํด๋์ค ์ฝ๋๋ฅผ ์ ํํ๊ณ Ctrl+K๋ฅผ ๋๋ฅธ ํ 'Generate Docs' ๋๋ ๊ฐ๋จํ 'Doc'์ด๋ผ๊ณ ์ ๋ ฅํ๋ฉด, ํด๋น ์ฝ๋์ ๊ธฐ๋ฅ, ํ๋ผ๋ฏธํฐ, ๋ฐํ๊ฐ ๋ฑ์ ์ค๋ช ํ๋ ์ฃผ์(Docstring)์ ์๋์ผ๋ก ์์ฑํด์ค๋๋ค.์ฝ๋ ์ดํด๋ ํฅ์: ๋ค๋ฅธ ์ฌ๋์ด ์์ฑํ๊ฑฐ๋, ๋ด๊ฐ ์์ฑํ์ง๋ง ์ค๋๋์ด ๊ธฐ์ต๋์ง ์๋ ์ฝ๋์ ๋ฌธ์๋ฅผ ๋น ๋ฅด๊ฒ ์์ฑํ์ฌ ์ฝ๋์ ๊ธฐ๋ฅ์ ์ ์ํ๊ฒ ํ์ ํ ์ ์์ต๋๋ค.์ผ๊ด๋ ๋ฌธ์ ์คํ์ผ ์ ์ง: ํ ๋ด์์ ์ผ๊ด๋ ํ์์ ๋ฌธ์ ์์ฑ์ ์ ์งํ๋ ๋ฐ ๋์์ด ๋ฉ๋๋ค.
ํ์ฉ ์์: ์๋กญ๊ฒ ์์ฑํ ์ ํธ๋ฆฌํฐ ํจ์ ์ ์ฒด๋ฅผ ์ ํํ๊ณ 'Doc' ๋ช ๋ น์ผ๋ก JSDoc ํ์์ ์ฃผ์ ์๋ ์์ฑ ๋ณต์กํ ํด๋์ค ์ฝ๋๋ฅผ ์ดํดํ๊ธฐ ์ํด ๋จผ์ ๋ฌธ์๋ถํฐ ์์ฑํ์ฌ ๊ธฐ๋ฅ ํ์
Pro Tip: ์์ฑ๋ ๋ฌธ์๋ฅผ ๊ทธ๋๋ก ์ฌ์ฉํ๊ธฐ๋ณด๋ค๋, ํ๋ฒ ๊ฒํ ํ๋ฉฐ ์์ ๋ง์ ์ค๋ช ์ด๋ ํ์ ์ปจ๋ฒค์ ์ ๋ง๊ฒ ์์ ํ๋ฉด ๋์ฑ ์ข์ต๋๋ค.
VS Code์ ํ์ฅํ: ์ปค์๋ VS Code๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ๋ง๋ค์ด์ ธ ๊ธฐ์กด VS Code ์ฌ์ฉ์๋ผ๋ฉด ๋ณ๋์ ํ์ต ์์ด ๋ฐ๋ก ์ ์ํ ์ ์์ผ๋ฉฐ, ๋ชจ๋ VS Code ํ์ฅ ํ๋ก๊ทธ๋จ์ ๊ทธ๋๋ก ์ฌ์ฉํ ์ ์์ต๋๋ค.AI๋ ๋ณด์กฐ ๋๊ตฌ: AI๊ฐ ์์ฑํ ์ฝ๋๋ ์๋ฒฝํ์ง ์์ ์ ์์ต๋๋ค. ํญ์ ์ฝ๋๋ฅผ ๊ฒํ ํ๊ณ , ์ดํดํ๋ฉฐ, ํ ์คํธํ๋ ์ฑ ์์ ๊ฐ๋ฐ์์๊ฒ ์์ต๋๋ค. AI๋ ๋์ ์ง๋ฅ์ ๋์ฒดํ๋ ๊ฒ์ด ์๋๋ผ '์ฆ๊ฐ'์ํค๋ ๋๊ตฌ์ ๋๋ค.์์์ ๋ฌด๋ฃ, ๊ฐ๋ ฅํ ๊ธฐ๋ฅ์ ์ ๋ฃ: ๊ธฐ๋ณธ์ ์ธ ๊ธฐ๋ฅ์ ๋ฌด๋ฃ๋ก๋ ์ถฉ๋ถํ ๊ฒฝํํ ์ ์์ง๋ง, GPT-4o๋ Claude 3 Opus ๊ฐ์ ์ต์ ๋ชจ๋ธ์ ์ฌ์ฉํ๊ฑฐ๋ ๋ ๋ง์ AI ๊ธฐ๋ฅ์ ํ์ฉํ๋ ค๋ฉด ์ ๋ฃ ํ๋์ ๊ณ ๋ คํด์ผ ํฉ๋๋ค.์์ ๊ฒ๋ถํฐ ์์ํ๊ธฐ: ์ฒ์๋ถํฐ ๋๋ฌด ๋ณต์กํ ์์ ์ ๋งก๊ธฐ๊ธฐ๋ณด๋ค๋, ์ฝ๋ ์ค๋ช , ๊ฐ๋จํ ํจ์ ์์ฑ, ์๋ฌ ์์ ๋ฑ ์์ ์์ ๋ถํฐ ์์ํ๋ฉฐ AI์ ํ์ ํ๋ ๊ฐ๊ฐ์ ์ตํ๋๊ฐ๋ ๊ฒ์ด ์ข์ต๋๋ค.
