๐ ๋ด์ผ ์์นจ ์ถ๊ทผํ๋ฉด ๋ฐ๋ก ์ ์ฉํ ์ ์๋ AI ์ฝ๋ฉ ํ์ด๊ธฐ 7
—
1. AI ์๊ฒ ํ์ฌ ์ฝ๋ ์คํ์ผ ๊ฐ์ ํ๊ธฐ
– ๋ฌธ์ : AI๊ฐ ์์ฑํ ์ฝ๋๊ฐ ํ์ฌ ์ปจ๋ฒค์
๊ณผ ์ ๋ง์ ๋ฆฌ๋ทฐ ๋ ๊ฑธ๋ฆผ.
– ํด๊ฒฐ: Cursor ์ค์ ํ์ผ(`cursor.json`)์ ESLint ๊ท์น์ด๋ ์ปค์คํ
ํ๋กฌํํธ์ถ๊ฐ.
{ "customInstructions": "Always use 2-space indentation, camelCase function names, and write comments in English.", }
– ํจ๊ณผ: ์ ์ ๊ฐ๋ฐ์๊ฐ AI๊ฐ ์์ฑํ ์ฝ๋๊ฐ PR์์ ํ ๋ฒ์ ํต๊ณผ๋์ด์! (1๋ ์ฐจ ๊น์จ)
—
2. ํ๋กฌํํธ์ ๋งฅ๋ฝ ์ฃผ์
200% ํ์ฉ๋ฒ
– ์คํจ ์: Implement login API โ JWT? ์ธ์
? ์ํธํ ๋ฐฉ์? ๋๋ฝ.
– ์ฑ๊ณต ์:
"Generate a JWT-based login API in Node.js with TypeScript. Request: { email: string, password: string } Response: { success: boolean, token?: string, error?: string } Use bcrypt for password hashing and set token expiration to 24 hours."
– ๊ฒฐ๊ณผ: “ํ ๋ฒ์ ์ํ๋ ๊ตฌ์กฐ์ ์ฝ๋๊ฐ ๋์์ ์์ ์๊ฐ 80% ์ ์ฝ” (๋ฐฑ์๋ ์ฃผ๋์ด ๋ฐ์จ)
—
3. AI ํ
์คํธ ์ฝ๋ ์์ฑ๊ธฐ๋ก ํ์ฉ
– ์ ํํ ํจ์์ ํ
์คํธ ์ฝ๋ ์๋ ์์ฑ.
– ํ: ํ
์คํธ ํ๋ ์์ํฌ ์ง์ ๊ฐ๋ฅ!
"Write Jest test code for this function. Mock the userRepository module."
–์ฌ๋ก: “๋ณต์กํ ๊ฒฐ์ ๋ชจ๋ ํ ์คํธ ์์ฑ ์๊ฐ์ด 3์๊ฐ โ 30๋ถ์ผ๋ก” (QA ์์ง๋์ด ์ต์จ)
—
4. AI ๊ฐ ์ถ์ฒํ ์ฝ๋์์ ๋ณด์ ๋ฌธ์ ์ก๊ธฐ
– ์ํ: AI๊ฐ ํ๋์ฝ๋ฉ๋ API ํค๋ฅผ ์์ฑํ ์ ์์.
– ๋์:
1. GitGuardian ์ค์น โ ์ปค๋ฐ ์ ์๋ ์ค์บ.
2. ํ๋กฌํํธ์ “Never hardcode passwords or API keys in the code.” ์ถ๊ฐ.
– ํ์ฅ ์ฆ์ธ: “AI ์์ฑ ์ฝ๋์์ AWS ํค๊ฐ ๋
ธ์ถ๋ ๋ปํ ์ฌ๊ณ ๋ฐฉ์ง” (DevOps ์ด๋๋ฆฌ)
—
5. ์๋ฌ ๋ฉ์์ง ๋ณต๋ถํด์ ์ฆ์ ํด๊ฒฐ์ฑ
์ป๊ธฐ
– ์๋ฌ ๋ก๊ทธ๋ฅผ ๊ทธ๋๋ก ๋ถ์ฌ๋ฃ๊ธฐ.
"TypeError: Cannot read properties of undefined (reading 'map') How to fix this? Here's the code snippet: [Paste code]"
– ํจ์จ: “๊ตฌ๊ธ ๊ฒ์๋ณด๋ค 5๋ฐฐ ๋น ๋ฅด๊ฒ ํด๊ฒฐ์ฑ ์ฐพ์” (ํ๋ก ํธ์๋ ์ ์จ)
—
6. AI ์๊ฒ ๋ ๊ฑฐ์ ์ฝ๋ ์ค๋ช
์์ฒญํ๊ธฐ
– ํ: ๋ณต์กํ ๋ ๊ฑฐ์ ํจ์ ์ ํ ํ “Summarize this function in 3 bullet points.”
– ์ฌ์ฉ ์:
– “200์ค์ง๋ฆฌ jQuery ํ๋ฌ๊ทธ์ธ์ 5๋ถ ๋ง์ ์ดํด” (์ ์ง๋ณด์ ํ ์ฅ์จ)
– “ํ ๋ด ๋ฌธ์ํ ์๊ฐ์ 70% ์ ์ฝ” (ํ
ํฌ๋ฆฌ๋ ํ๊ณผ์ฅ)
—
7. AI ์ฝ๋ ์์ฑ ํ ๊ผญ ์ฒดํฌํ 3๊ฐ์ง
– ๋ผ์ด์ ์ค: AI๊ฐ ์ถ์ฒํ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๊ฐ GPL ๋ฑ ๊ฐ์ ์คํ์์ค์ธ์ง ํ์ธ.
– ์ฑ๋ฅ: “AI๊ฐ ์ถ์ฒํ ์๊ณ ๋ฆฌ์ฆ์ด O(nยฒ)์ธ๋ฐ ๋ฐ์ดํฐ๊ฐ 100๋ง ๊ฑด… ๋์ฐธ์ฌ ๋ปํจ” (๋ฐฑ์๋ ์ด์จ)
– ํ์ฌ ๊ท์น: “AI๊ฐ ์์ฑํ ์ฝ๋์ ํ์ฌ ๊ธ์ง API๊ฐ ํฌํจ๋์ด ์์์” (๋ณด์ํ ๊น๊ณผ์ฅ)
—
๐ Bonus: Cursor ์จ๊ฒจ์ง ๊ธฐ๋ฅ
– ์ฝ๋ ๋ฒ์ญ: “Convert this Python script to Go.”
– DB ์ฟผ๋ฆฌ ์์ฑ: “Generate a PostgreSQL query to create a user table with columns: id, name, email, created_at.”
– ์ปค๋ฐ ๋ฉ์์ง: ๋ณ๊ฒฝ๋ ์ฝ๋ ์ ํ โ “Generate a git commit message for these changes.”
—
๐ฅ ์ค๋์ ๋ฏธ์
: ๋ด์ผ ๋ฐ๋ก Tip 2๋ฒ ์ ์ฉํด ๋ณด๊ณ , ๋๋ฃ์๊ฒ ์์ฑ๋ ์ฝ๋ ๋ฆฌ๋ทฐ ๋ฐ๊ธฐ!
“AI ์ฝ๋ฉ์ ๊ฒฐ๊ตญ ๋๊ตฌ์
๋๋ค. ์ฌ๋ฌ๋ถ์ด ์ค๊ณํ๊ณ , AI๊ฐ ๋์์ฃผ๋ ํ์
์ด ์ง์ง ๋ฏธ๋์์.” โ 8๋
์ฐจ ๊ฐ๋ฐ์์ ํ๋ง๋
๐จ ์คํ ํ๊ธฐ ๊ณต์ : ์ฌ๋ฌ๋ถ์ AI ์ฝ๋ฉ ์ฑ๊ณต/์คํจ ์ฌ๋ก๋ฅผ ๋๊ธ๋ก ๋จ๊ฒจ์ฃผ์ธ์.
—
๐ ์ฐธ๊ณ : ์์ด ํ๋กฌํํธ๊ฐ ๋ ์ ํํ ๊ฒฐ๊ณผ๋ฅผ ๋ด๋ ๊ฒฝ์ฐ๊ฐ ๋ง์ง๋ง, ํ๊ธ๋ก๋ ์ถฉ๋ถํ ํจ๊ณผ์ ์
๋๋ค.
์: “JWT ๊ธฐ๋ฐ ๋ก๊ทธ์ธ API ์์ฑํด์ค” โ “Generate a JWT-based login API”
ํด์ด ์ง์ํ๋ ์ธ์ด์ ๋ง์ถฐ ํ์ฉํ์ธ์!