์‚ฌ์šฉ์ž ๋„๊ตฌ

์‚ฌ์ดํŠธ ๋„๊ตฌ


wiki:it:ai:services:cursor

์ฐจ์ด

๋ฌธ์„œ์˜ ์„ ํƒํ•œ ๋‘ ํŒ ์‚ฌ์ด์˜ ์ฐจ์ด๋ฅผ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค.

์ฐจ์ด ๋ณด๊ธฐ๋กœ ๋งํฌ

์–‘์ชฝ ์ด์ „ ํŒ์ด์ „ ํŒ
wiki:it:ai:services:cursor [2025/07/29 07:36] โ€“ [Cursor AI ๊ฐœ๋ฐœ ๋„๊ตฌ: ์ข…ํ•ฉ ๊ฐ€์ด๋“œ] syjang0803wiki:it:ai:services:cursor [2025/07/30 06:43] (ํ˜„์žฌ) โ€“ ๋ฐ”๊นฅ ํŽธ์ง‘ 127.0.0.1
์ค„ 1: ์ค„ 1:
-===== Cursor AI ๊ฐœ๋ฐœ ๋„๊ตฌ: ์ข…ํ•ฉ ๊ฐ€์ด๋“œ =====+====== ๐Ÿ’ป Cursor AI ๊ฐœ๋ฐœ ๋„๊ตฌ ์™„์ „ ๊ฐ€์ด๋“œ ======
  
-''Cursor''์˜ ''AI'' ๊ธฐ๋ฐ˜ ์ฝ”๋“œ ์—๋””ํ„ฐ ๋ฐ ๊ฐœ๋ฐœ ๋„๊ตฌ์˜ ์ฃผ์š” ํŠน์ง•๊ณผ ํ™œ์šฉ๋ฒ•์„ ์ฒด๊ณ„์ ์œผ๋กœ ์„ค๋ช…ํ•ฉ๋‹ˆ๋‹ค.+Cursor๋Š” AI ๊ธฐ๋ฐ˜ ์ฝ”๋”ฉ ์–ด์‹œ์Šคํ„ดํŠธ๋กœ, ๊ฐœ๋ฐœ์ž์˜ ์ƒ์‚ฐ์„ฑ์„ ํ˜์‹ ์ ์œผ๋กœ ํ–ฅ์ƒ์‹œํ‚ค๋Š” ๋„๊ตฌ์ž…๋‹ˆ๋‹ค. VS Code ๊ธฐ๋ฐ˜์˜ ๊ฐ•๋ ฅํ•œ AI ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.
  
-{{https://mintlify.s3.us-west-1.amazonaws.com/cursor/images/welcome.png?600}}ย +===== ๐Ÿ“Š Cursor ์ฃผ์š” ํŠน์ง• ๋น„๊ต =====
-----+
  
-==== 1. Cursor AI ์†Œ๊ฐœ ====+^ ๊ธฐ๋Šฅ ^ Cursor ^ VS Code ^ GitHub Copilot ^ย 
 +| **AI ์ฝ”๋“œ ์ƒ์„ฑ** | โญโญโญโญโญ | โญโญ | โญโญโญโญ |ย 
 +| **์‹ค์‹œ๊ฐ„ ๋””๋ฒ„๊น…** | โญโญโญโญโญ | โญโญโญ | โญโญโญ |ย 
 +| **์ฝ”๋“œ ๋ฆฌํŒฉํ† ๋ง** | โญโญโญโญโญ | โญโญ | โญโญโญโญ |ย 
 +| **๋ฌธ์„œํ™”** | โญโญโญโญ | โญโญโญ | โญโญโญ |ย 
 +| **๋ฉ€ํ‹ฐ ์–ธ์–ด ์ง€์›** | โญโญโญโญโญ | โญโญโญโญ | โญโญโญโญ |ย 
 +| **์ปจํ…์ŠคํŠธ ์ดํ•ด** | โญโญโญโญโญ | โญโญ | โญโญโญ |
  
-=== 1.1. ๊ฐœ์š” ๋ฐ ๋ชฉ์  ===+===== ๐ŸŽฏ ๋ชจ๋ธ๋ณ„ ์„ฑ๋Šฅ ๋น„๊ต =====
  
-''Cursor''๋Š” ๊ฐœ๋ฐœ ์ƒ์‚ฐ์„ฑ์„ ๊ทน๋Œ€ํ™”ํ•˜๊ธฐ ์œ„ํ•ด ์„ค๊ณ„๋œ ''AI'' ๊ธฐ๋ฐ˜์˜ ์ฝ”๋“œ ์—๋””ํ„ฐ์ž…๋‹ˆ๋‹ค์ž์—ฐ์–ด ์„ค๋ช…์„ ํ†ตํ•ด ์ฝ”๋“œ๋ฅผ ์ƒ์„ฑํ•˜๊ณ , ๊ธฐ์กด ์ฝ”๋“œ๋ฅผ ๋ถ„์„ํ•˜์—ฌ ๊ฐœ์„ ํ•˜๋ฉฐ, ๊ฐœ๋ฐœ ์›Œํฌํ”Œ๋กœ์šฐ ์ „๋ฐ˜์— ๊ฑธ์ณ ์ง€๋Šฅ์ ์ธ ์ง€์›์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.+^ ํ‰๊ฐ€ ํ•ญ๋ชฉ ^ GPT-4o ^ Claude 3.5 ^ Gemini 2.0 ^ย 
 +| **์ฝ”๋“œ ์ƒ์„ฑ ํ’ˆ์งˆ** | โญโญโญโญโญ | โญโญโญโญ | โญโญโญโญ |ย 
 +| **๋””๋ฒ„๊น… ๋Šฅ๋ ฅ** | โญโญโญโญโญ | โญโญโญโญโญ | โญโญโญโญ |ย 
 +| **์‘๋‹ต ์†๋„** | โญโญโญโญ | โญโญโญโญ | โญโญโญโญโญ |ย 
 +| **์ปจํ…์ŠคํŠธ ์ดํ•ด** | โญโญโญโญโญ | โญโญโญโญโญ | โญโญโญโญ |ย 
 +| **๋น„์šฉ ํšจ์œจ์„ฑ** | โญโญโญ | โญโญโญโญ | โญโญโญโญโญ |
  
-=== 1.2. ์ฃผ์š” ํŠน์ง• ๋ฐ ์žฅ์  ===+===== ๐Ÿ”ง ํ•ต์‹ฌ ๊ธฐ๋Šฅ =====
  
-  * ''AI'' ์ฝ”๋“œ ์ƒ์„ฑ: ์ž์—ฐ์–ด ์„ค๋ช…๋งŒ์œผ๋กœ ์ฝ”๋“œ๋ฅผ ์ž๋™์œผ๋กœ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค.ย +===== AI ์ฝ”๋“œ ์ƒ์„ฑ ====
-  * ์‹ค์‹œ๊ฐ„ ์ฝ”๋“œ ์™„์„ฑ: ๋ฌธ๋งฅ์„ ์ดํ•ดํ•˜์—ฌ ์ •ํ™•ํ•˜๊ณ  ๋น ๋ฅธ ์ฝ”๋“œ ์ž๋™ ์™„์„ฑ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.ย +
-  * ์ฝ”๋“œ ๋ฆฌํŒฉํ† ๋ง: ''AI''๊ฐ€ ์ฝ”๋“œ ๊ตฌ์กฐ๋ฅผ ๋ถ„์„ํ•˜๊ณ  ์ตœ์ ํ™”๋œ ๊ฐœ์„  ๋ฐฉ์•ˆ์„ ์ œ์•ˆํ•ฉ๋‹ˆ๋‹ค.ย +
-  * ๋””๋ฒ„๊น… ์ง€์›: ์˜ค๋ฅ˜๋ฅผ ์‹ ์†ํ•˜๊ฒŒ ๋ถ„์„ํ•˜๊ณ  ํ•ด๊ฒฐ์ฑ…์„ ์ œ์‹œํ•˜์—ฌ ๋””๋ฒ„๊น… ์‹œ๊ฐ„์„ ๋‹จ์ถ•ํ•ฉ๋‹ˆ๋‹ค.ย +
-  * ํญ๋„“์€ ์–ธ์–ด ์ง€์›: ''Python'', ''JavaScript'', ''TypeScript'', ''Java'', ''C++'' ๋“ฑ ๋‹ค์–‘ํ•œ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด๋ฅผ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.ย +
-  * ํ†ตํ•ฉ ๊ฐœ๋ฐœ ํ™˜๊ฒฝ: ''Git'', ''Docker'', ํ„ฐ๋ฏธ๋„ ๋“ฑ ํ•„์ˆ˜ ๊ฐœ๋ฐœ ๋„๊ตฌ์™€ ์™„๋ฒฝํ•˜๊ฒŒ ํ†ตํ•ฉ๋ฉ๋‹ˆ๋‹ค.+
  
-----+**์‹ค์‹œ๊ฐ„ ์ฝ”๋“œ ์ƒ์„ฑ**ย 
 +  * ์ž์—ฐ์–ด ์„ค๋ช…์œผ๋กœ ์ฝ”๋“œ ์ž๋™ ์ƒ์„ฑย 
 +  * ํ”„๋กœ์ ํŠธ ์ปจํ…์ŠคํŠธ๋ฅผ ๊ณ ๋ คํ•œ ์Šค๋งˆํŠธ ์ œ์•ˆย 
 +  * ํ•จ์ˆ˜, ํด๋ž˜์Šค, ์ „์ฒด ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์ƒ์„ฑย 
 +  * ์ฃผ์„๊ณผ ๋ฌธ์„œํ™” ์ž๋™ ํฌํ•จ
  
-==== 2. ํ•ต์‹ฌ ๊ธฐ๋Šฅ ์ƒ์„ธ ์„ค๋ช… ====+**์‹ค์ œ ์‚ฌ์šฉ ์˜ˆ์‹œ:**ย 
 +<code>ย 
 +ํ”„๋กฌํ”„ํŠธ: "์‚ฌ์šฉ์ž ์ธ์ฆ์„ ์œ„ํ•œ React ์ปดํฌ๋„ŒํŠธ๋ฅผ ๋งŒ๋“ค์–ด์ค˜"
  
-=== 2.1AI ๊ธฐ๋ฐ˜ ์ฝ”๋“œ ์ƒ์„ฑ ===+Cursor ์‘๋‹ต:ย 
 +```jsxย 
 +import React, { useState } from 'react';ย 
 +import './AuthForm.css';
  
-''Cursor''์˜ ๊ฐ€์žฅ ๊ฐ•๋ ฅํ•œ ๊ธฐ๋Šฅ ์ค‘ ํ•˜๋‚˜๋กœ์‚ฌ์šฉ์ž์˜ ์ž์—ฐ์–ด ์š”์ฒญ์„ ๊ธฐ๋ฐ˜์œผ๋กœ ์ฝ”๋“œ๋ฅผ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค.+const AuthForm = ({ onLogin }) => {ย 
 +  const [formData, setFormData] = useState({ย 
 +    email: '',ย 
 +    password: ''ย 
 +  });ย 
 +  const [isLoadingsetIsLoading] = useState(false);
  
-  * ์ž์—ฐ์–ด ์„ค๋ช…: ์›ํ•˜๋Š” ๊ธฐ๋Šฅ์ด๋‚˜ ๋กœ์ง์„ ํ‰์ดํ•œ ์–ธ์–ด๋กœ ์„ค๋ช…ํ•ฉ๋‹ˆ๋‹ค.ย +  const handleSubmit = async (e) => {ย 
-  ''AI'' ๋ถ„์„: ''Cursor''๊ฐ€ ์š”๊ตฌ์‚ฌํ•ญ์„ ๋ถ„์„ํ•˜๊ณ  ์ตœ์ ์˜ ์ฝ”๋“œ ๊ตฌ์กฐ๋ฅผ ํŒŒ์•…ํ•ฉ๋‹ˆ๋‹ค.ย +    e.preventDefault();ย 
-  * ์ฝ”๋“œ ์ƒ์„ฑ์„ค๋ช…์— ๋งž๋Š” ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด๋กœ ์ฝ”๋“œ๋ฅผ ์ž๋™์œผ๋กœ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค.ย +    setIsLoading(true);ย 
-  * ์‹ค์‹œ๊ฐ„ ํŽธ์ง‘: ์ƒ์„ฑ๋œ ์ฝ”๋“œ๋ฅผ ์ฆ‰์‹œ ๊ฒ€ํ† ํ•˜๊ณ  ์ˆ˜์ •ํ•˜์—ฌ ์™„์„ฑ๋„๋ฅผ ๋†’์ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.+    ย 
 +    try {ย 
 +      const response = await fetch('/api/auth/login', {ย 
 +        method: 'POST',ย 
 +        headers'Content-Type''application/json},ย 
 +        bodyJSON.stringify(formData)ย 
 +      });ย 
 +      ย 
 +      if (response.ok) {ย 
 +        const userData = await response.json();ย 
 +        onLogin(userData);ย 
 +      }ย 
 +    } catch (error) {ย 
 +      console.error('Login failed:', error);ย 
 +    } finally {ย 
 +      setIsLoading(false);ย 
 +    }ย 
 +  };
  
-=== 2.2์ง€๋Šฅํ˜• ์ฝ”๋“œ ์™„์„ฑ ===+  return (ย 
 +    <form onSubmit={handleSubmit} className="auth-form">ย 
 +      <inputย 
 +        type="email"ย 
 +        placeholder="์ด๋ฉ”์ผ"ย 
 +        value={formData.email}ย 
 +        onChange={(e) => setFormData({...formData, email: e.target.value})}ย 
 +        requiredย 
 +      />ย 
 +      <inputย 
 +        type="password"ย 
 +        placeholder="๋น„๋ฐ€๋ฒˆํ˜ธ"ย 
 +        value={formData.password}ย 
 +        onChange={(e) => setFormData({...formData, password: e.target.value})}ย 
 +        requiredย 
 +      />ย 
 +      <button type="submit" disabled={isLoading}>ย 
 +        {isLoading ? '๋กœ๊ทธ์ธ ์ค‘...' : '๋กœ๊ทธ์ธ'}ย 
 +      </button>ย 
 +    </form>ย 
 +  );ย 
 +};
  
-์ƒ์‚ฐ์„ฑ์„ ๋†’์ด๋Š” ์‹ค์‹œ๊ฐ„ ์ฝ”๋“œ ์™„์„ฑ ๊ธฐ๋Šฅ์ž…๋‹ˆ๋‹ค.+export default AuthForm;ย 
 +```ย 
 +</code>
  
-  * ์ปจํ…์ŠคํŠธ ์ธ์‹: ํ˜„์žฌ ํ”„๋กœ์ ํŠธ ๊ตฌ์กฐ, ๊ธฐ์กด ์ฝ”๋“œ, ์‚ฌ์šฉ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ๋“ฑ์„ ์ข…ํ•ฉ์ ์œผ๋กœ ๋ถ„์„ํ•ฉ๋‹ˆ๋‹ค.ย +===== AI ๋””๋ฒ„๊น… ====
-  * ์Šค๋งˆํŠธ ์ œ์•ˆ: ํ•จ์ˆ˜, ๋ณ€์ˆ˜, ํด๋ž˜์Šค, ๋ฉ”์„œ๋“œ ๋“ฑ ๋ฌธ๋งฅ์— ๋งž๋Š” ์ตœ์ ์˜ ์ฝ”๋“œ๋ฅผ ์ž๋™์œผ๋กœ ์ œ์•ˆํ•ฉ๋‹ˆ๋‹ค.ย +
-  * ๋ฌธ์„œํ™” ์ง€์›: ํ•„์š”ํ•œ ๊ฒฝ์šฐ ์ฃผ์„ ๋ฐ ''docstring''์„ ์ž๋™์œผ๋กœ ์ƒ์„ฑํ•˜์—ฌ ์ฝ”๋“œ ๊ฐ€๋…์„ฑ์„ ๋†’์ž…๋‹ˆ๋‹ค.ย +
-  * ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์ƒ์„ฑ: ํŠน์ • ํ•จ์ˆ˜๋‚˜ ๋กœ์ง์— ๋Œ€ํ•œ ๋‹จ์œ„ ํ…Œ์ŠคํŠธ ์ฝ”๋“œ๋ฅผ ์ž๋™์œผ๋กœ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค.+
  
-=== 2.3. ์ฝ”๋“œ ๋ฆฌํŒฉํ† ๋ง ๋ฐ ๊ฐœ์„  ===+**์Šค๋งˆํŠธ ์˜ค๋ฅ˜ ๋ถ„์„**ย 
 +  * ์˜ค๋ฅ˜ ๋ฉ”์‹œ์ง€ ์ž๋™ ๋ถ„์„ ๋ฐ ํ•ด๊ฒฐ์ฑ… ์ œ์‹œย 
 +  * ์ฝ”๋“œ ์‹คํ–‰ ํ๋ฆ„ ์ถ”์ ย 
 +  * ์„ฑ๋Šฅ ๋ณ‘๋ชฉ ์ง€์  ์‹๋ณ„ย 
 +  * ๋ณด์•ˆ ์ทจ์•ฝ์  ๊ฒ€ํ† 
  
-''AI'' ๊ธฐ๋ฐ˜์œผ๋กœ ์ฝ”๋“œ์˜ ํ’ˆ์งˆ๊ณผ ํšจ์œจ์„ฑ์„ ํ–ฅ์ƒ์‹œํ‚ต๋‹ˆ๋‹ค.+**๋””๋ฒ„๊น… ์˜ˆ์‹œ:**ย 
 +<code>ย 
 +์˜ค๋ฅ˜: "TypeError: Cannot read property 'nameof undefined"
  
-  * ''AI'' ๊ธฐ๋ฐ˜ ๋ฆฌํŒฉํ† ๋ง์ฝ”๋“œ์˜ ๋ณต์žก์„ฑ์„ ์ค„์ด๊ณ  ๊ฐ€๋…์„ฑ์„ ๋†’์ด๋ฉฐ, ์œ ์ง€๋ณด์ˆ˜๋ฅผ ์šฉ์ดํ•˜๊ฒŒ ํ•˜๋Š” ๊ฐœ์„  ๋ฐฉ์•ˆ์„ ์ œ์•ˆํ•ฉ๋‹ˆ๋‹ค.ย +Cursor ๋ถ„์„:ย 
-  * ์„ฑ๋Šฅ ์ตœ์ ํ™”์ž ์žฌ์ ์ธ ์„ฑ๋Šฅ ๋ณ‘๋ชฉ ์ง€์ ์„ ์‹๋ณ„ํ•˜๊ณ  ์ตœ์ ํ™”๋œ ์ฝ”๋“œ๋ฅผ ์ œ์•ˆํ•ฉ๋‹ˆ๋‹ค.ย +์ด ์˜ค๋ฅ˜๋Š” user ๊ฐ์ฒด๊ฐ€ undefined์ผ ๋•Œ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.ย 
-  * ํŒจํ„ด ์ธ์‹: ์ผ๋ฐ˜์ ์ธ ์ฝ”๋”ฉ ํŒจํ„ด์„ ํ•™์Šตํ•˜์—ฌ ๋น„ํšจ์œจ์ ์ธ ์ฝ”๋“œ๋ฅผ ๊ฐœ์„ ํ•ฉ๋‹ˆ๋‹ค.+ํ•ด๊ฒฐ์ฑ…์˜ต์…”๋„ ์ฒด์ด๋‹ ๋˜๋Š” ๊ธฐ๋ณธ๊ฐ’ ์„ค์ •
  
-=== 2.4. ๋””๋ฒ„๊น… ๋ฐ ๋ฌธ์ œ ํ•ด๊ฒฐ ์ง€์› ===+์ˆ˜์ •๋œ ์ฝ”๋“œ:ย 
 +```javascriptย 
 +// ๊ธฐ์กด ์ฝ”๋“œย 
 +const userName user.name;
  
-์˜ค๋ฅ˜๋ฅผ ์‹ ์†ํ•˜๊ฒŒ ์ฐพ์•„๋‚ด๊ณ  ํ•ด๊ฒฐํ•˜๋Š” ๋ฐ ๋„์›€์„ ์ค๋‹ˆ๋‹ค.+// ์ˆ˜์ •๋œ ์ฝ”๋“œย 
 +const userName = user?.name || 'Unknown User';ย 
 +```ย 
 +</code>
  
-  * ์˜ค๋ฅ˜ ๋ถ„์„: ์ฝ”๋“œ ๋‚ด์˜ ์˜ค๋ฅ˜๋ฅผ ๊ฐ์ง€ํ•˜๊ณ  ์›์ธ์„ ๋ถ„์„ํ•˜์—ฌ ์„ค๋ช…ํ•ฉ๋‹ˆ๋‹ค.ย +===== AI ์ฝ”๋“œ ๋ฆฌํŒฉํ† ๋ง ====
-  * ํ•ด๊ฒฐ์ฑ… ์ œ์‹œ: ๋ฐœ๊ฒฌ๋œ ์˜ค๋ฅ˜์— ๋Œ€ํ•œ ๊ตฌ์ฒด์ ์ธ ํ•ด๊ฒฐ ๋ฐฉ์•ˆ์„ ์ œ์‹œํ•ฉ๋‹ˆ๋‹ค.ย +
-  * ์ทจ์•ฝ์  ์Šค์บ”: ์ž ์žฌ์ ์ธ ๋ณด์•ˆ ์ทจ์•ฝ์ ์„ ์ž๋™์œผ๋กœ ๊ฒ€์‚ฌํ•˜๊ณ  ๋ณด๊ณ ํ•ฉ๋‹ˆ๋‹ค.+
  
-----+**์ž๋™ ์ฝ”๋“œ ๊ฐœ์„ **ย 
 +  * ์ฝ”๋“œ ํ’ˆ์งˆ ์ž๋™ ๋ถ„์„ย 
 +  * ์„ฑ๋Šฅ ์ตœ์ ํ™” ์ œ์•ˆย 
 +  * ๊ฐ€๋…์„ฑ ํ–ฅ์ƒย 
 +  * ์•„ํ‚คํ…์ฒ˜ ๊ฐœ์„ 
  
-==== 3๊ธฐ์ˆ  ์Šคํƒ ๋ฐ ์ง€์› ํ™˜๊ฒฝ ====+**๋ฆฌํŒฉํ† ๋ง ์˜ˆ์‹œ:**ย 
 +<code>ย 
 +๊ธฐ์กด ์ฝ”๋“œ:ย 
 +```javascriptย 
 +function processData(data) {ย 
 +  let result [];ย 
 +  for (let i 0; i < data.length; i++) {ย 
 +    if (data[i].active) {ย 
 +      result.push(data[i].name);ย 
 +    }ย 
 +  }ย 
 +  return result;ย 
 +}ย 
 +```
  
-=== 3.1AI ๋ชจ๋ธ ๋ฐ ์—”์ง„ ===+Cursor ๋ฆฌํŒฉํ† ๋ง:ย 
 +```javascriptย 
 +function processData(data) {ย 
 +  return dataย 
 +    .filter(item => item.active)ย 
 +    .map(item => item.name);ย 
 +}ย 
 +```ย 
 +</code>
  
-  * ''AI'' ๋ชจ๋ธ: ''GPT-4'', ''Claude'' ๋“ฑ ์ตœ์‹  ๊ฑฐ๋Œ€ ์–ธ์–ด ๋ชจ๋ธ์„ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•œ ์ฝ”๋“œ ์ƒ์„ฑ ์—”์ง„์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.ย +===== ๐Ÿ’ฐ ๊ฐ€๊ฒฉ ์ •์ฑ… =====
-  * ํ•™์Šต ๋ฐ์ดํ„ฐ: ๋ฐฉ๋Œ€ํ•œ ์–‘์˜ ๊ณต๊ฐœ ์ฝ”๋“œ์™€ ๋ฌธ์„œ ๋ฐ์ดํ„ฐ๋ฅผ ํ•™์Šตํ•˜์—ฌ ๋†’์€ ์ •ํ™•๋„๋ฅผ ์ž๋ž‘ํ•ฉ๋‹ˆ๋‹ค.+
  
-=== 3.2. ๊ฐœ๋ฐœ ํ™˜๊ฒฝ ===+^ ํ”Œ๋žœ ^ ๊ฐ€๊ฒฉ ^ ์ฃผ์š” ๊ธฐ๋Šฅ ^ย 
 +| **Free** | $0 | ๊ธฐ๋ณธ AI ๊ธฐ๋Šฅ, ์ œํ•œ๋œ ์‚ฌ์šฉ๋Ÿ‰ |ย 
 +| **Pro** | $20/์›” | ๋ฌด์ œํ•œ ์‚ฌ์šฉ, ๊ณ ๊ธ‰ ๊ธฐ๋Šฅ |ย 
 +| **Team** | $25/์›”/์‚ฌ์šฉ์ž | ํŒ€ ํ˜‘์—…, ๊ณต์œ  ์„ค์ • |ย 
 +| **Enterprise** | ๋งž์ถคํ˜• | ๊ธฐ์—… ์ „์šฉ, ๋ณด์•ˆ ๊ฐ•ํ™” |
  
-  * ์—๋””ํ„ฐ: ''VS Code''๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ์ปค์Šคํ„ฐ๋งˆ์ด์ง•๋œ ์—๋””ํ„ฐ ํ™˜๊ฒฝ์„ ์ œ๊ณตํ•˜์—ฌ ์ต์ˆ™ํ•˜๊ณ  ๊ฐ•๋ ฅํ•œ ๊ธฐ๋Šฅ์„ ํ™œ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.ย +===== ๐Ÿš€ ํ™œ์šฉ ์‹œ๋‚˜๋ฆฌ์˜ค =====
-  * ํ†ตํ•ฉ ๊ฐœ๋ฐœ: ''Git'' ๋ฒ„์ „ ๊ด€๋ฆฌ, ''Docker'' ์ปจํ…Œ์ด๋„ˆ ํ™˜๊ฒฝ, ๋‚ด์žฅ ํ„ฐ๋ฏธ๋„ ๋“ฑ ํ•ต์‹ฌ ๊ฐœ๋ฐœ ๋„๊ตฌ์™€ ๊ธด๋ฐ€ํ•˜๊ฒŒ ํ†ตํ•ฉ๋ฉ๋‹ˆ๋‹ค.+
  
-=== 3.3. ์ง€์› ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด ===+^ ๊ฐœ๋ฐœ ์˜์—ญ ^ Cursor ํ™œ์šฉ ^ ๊ธฐ๋Œ€ ํšจ๊ณผ ^ย 
 +| **์›น ๊ฐœ๋ฐœ** | React/Vue ์ปดํฌ๋„ŒํŠธ ์ž๋™ ์ƒ์„ฑ | ๊ฐœ๋ฐœ ์†๋„ 3๋ฐฐ ํ–ฅ์ƒ |ย 
 +| **๋ฐฑ์—”๋“œ ๊ฐœ๋ฐœ** | API ์—”๋“œํฌ์ธํŠธ ์ž๋™ ์ƒ์„ฑ | ์„œ๋ฒ„ ๊ฐœ๋ฐœ ์‹œ๊ฐ„ ๋‹จ์ถ• |ย 
 +| **๋ชจ๋ฐ”์ผ ๊ฐœ๋ฐœ** | React Native/Flutter ์ฝ”๋“œ | ํฌ๋กœ์Šค ํ”Œ๋žซํผ ๊ฐœ๋ฐœ |ย 
 +| **๋ฐ์ดํ„ฐ ๊ณผํ•™** | Python ๋ถ„์„ ์Šคํฌ๋ฆฝํŠธ | ๋ฐ์ดํ„ฐ ๋ถ„์„ ์ž๋™ํ™” |
  
-  * ์ฃผ์š” ์–ธ์–ด: ''Python'', ''JavaScript'', ''TypeScript'', ''Java'', ''C++'', ''Go'', ''Rust'', ''C#'' ๋“ฑ ๋‹ค์–‘ํ•œ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด๋ฅผ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.ย +===== ๐Ÿ”ง ์„ค์ • ๋ฐ ์ตœ์ ํ™” =====
-  * ํ”„๋ ˆ์ž„์›Œํฌ ์ง€์›: ๊ฐ ์–ธ์–ด์˜ ์ฃผ์š” ํ”„๋ ˆ์ž„์›Œํฌ(์˜ˆ: ''React'', ''Vue'', ''Node.js'', ''Spring'', ''Django'')์— ๋Œ€ํ•œ ์ดํ•ด๋„๊ฐ€ ๋†’์Šต๋‹ˆ๋‹ค.+
  
-----+^ ์„ค์ • ์˜์—ญ ^ ์ตœ์ ํ™” ๋ฐฉ๋ฒ• ^ย 
 +| **ํ”„๋กœ์ ํŠธ ์„ค์ •** | .cursorrules ํŒŒ์ผ๋กœ ์ฝ”๋”ฉ ์Šคํƒ€์ผ ์ •์˜ |ย 
 +| **ํ”„๋กฌํ”„ํŠธ ์ตœ์ ํ™”** | ๊ตฌ์ฒด์ ์ด๊ณ  ๋ช…ํ™•ํ•œ ์š”๊ตฌ์‚ฌํ•ญ ์ž‘์„ฑ |ย 
 +| **๋ชจ๋ธ ์„ ํƒ** | ํ”„๋กœ์ ํŠธ ํŠน์„ฑ์— ๋งž๋Š” AI ๋ชจ๋ธ ์„ ํƒ |ย 
 +| **ํŒ€ ํ˜‘์—…** | ๊ณตํ†ต ์„ค์ • ๋ฐ ์ฝ”๋“œ ๋ฆฌ๋ทฐ ์›Œํฌํ”Œ๋กœ์šฐ |
  
-==== 4. ๊ฐœ๋ฐœ ์›Œํฌํ”Œ๋กœ์šฐ ํ†ตํ•ฉ ====+===== ๐Ÿ”’ ๋ณด์•ˆ ๋ฐ ๊ฐœ์ธ์ •๋ณด =====
  
-=== 4.1. ํ”„๋กœ์ ํŠธ ์ดˆ๊ธฐ ์„ค์ • ===+^ ๋ณด์•ˆ ์˜์—ญ ^ Cursor ์ •์ฑ… ^ย 
 +| **๋ฐ์ดํ„ฐ ์•”ํ˜ธํ™”** | ์—”๋“œํˆฌ์—”๋“œ ์•”ํ˜ธํ™”๋กœ ์ฝ”๋“œ ๋ณดํ˜ธ |ย 
 +| **๊ฐœ์ธ์ •๋ณด ๋ณดํ˜ธ** | ์‚ฌ์šฉ์ž ๋ฐ์ดํ„ฐ ์ตœ์†Œํ™” ๋ฐ ์ž๋™ ์‚ญ์ œ |ย 
 +| **์ ‘๊ทผ ์ œ์–ด** | ์—ญํ•  ๊ธฐ๋ฐ˜ ๊ถŒํ•œ ๊ด€๋ฆฌ ์‹œ์Šคํ…œ |ย 
 +| **๊ฐ์‚ฌ ๋กœ๊ทธ** | ๋ชจ๋“  ํ™œ๋™ ๊ธฐ๋ก ๋ฐ ์ถ”์  |
  
-  * ํ…œํ”Œ๋ฆฟ ์„ ํƒ: ์›น, ๋ชจ๋ฐ”์ผ, ๋ฐฑ์—”๋“œ ๋“ฑ ๋‹ค์–‘ํ•œ ํ”„๋กœ์ ํŠธ ํ…œํ”Œ๋ฆฟ์„ ์ œ๊ณตํ•˜์—ฌ ๋น ๋ฅธ ์‹œ์ž‘์„ ๋•์Šต๋‹ˆ๋‹ค.ย +===== ๐Ÿ”ฎ ํ–ฅํ›„ ์ „๋ง =====
-  * ์˜์กด์„ฑ ๊ด€๋ฆฌ: ''npm'', ''pip'', ''Maven'' ๋“ฑ ํŒจํ‚ค์ง€ ๋งค๋‹ˆ์ €์™€ ํ†ตํ•ฉ๋˜์–ด ์˜์กด์„ฑ ์„ค์น˜ ๋ฐ ๊ด€๋ฆฌ๊ฐ€ ์šฉ์ดํ•ฉ๋‹ˆ๋‹ค.ย +
-  * ํ™˜๊ฒฝ ์„ค์ •: ๊ฐœ๋ฐœ ํ™˜๊ฒฝ ๊ตฌ์„ฑ์„ ์ž๋™ํ™”ํ•˜์—ฌ ์ดˆ๊ธฐ ์„ค์ • ์‹œ๊ฐ„์„ ๋‹จ์ถ•ํ•ฉ๋‹ˆ๋‹ค.ย +
-  * ๋ฒ„์ „ ๊ด€๋ฆฌ: ''Git'' ์ €์žฅ์†Œ ์ดˆ๊ธฐํ™” ๋ฐ ์—ฐ๋™์„ ์ง€์›ํ•˜์—ฌ ํšจ์œจ์ ์ธ ๋ฒ„์ „ ๊ด€๋ฆฌ๋ฅผ ๊ฐ€๋Šฅํ•˜๊ฒŒ ํ•ฉ๋‹ˆ๋‹ค.+
  
-=== 4.2. ํ˜‘์—… ๋ฐ ํŒ€ ๊ฐœ๋ฐœ ===ย +^ ๋ฐœ์ „ ๋ฐฉํ–ฅ ^ Cursor 2.0 ^ ์—…๊ณ„ ์˜ํ–ฅ ^ย 
-ย +**AI ๋ชจ๋ธ** | ๋” ์ •ํ™•ํ•œ ์ฝ”๋“œ ์ƒ์„ฑ | ๊ฐœ๋ฐœ์ž ์ƒ์‚ฐ์„ฑ ํ˜์‹  |ย 
-  ์‹ค์‹œ๊ฐ„ ํŽธ์ง‘: ์—ฌ๋Ÿฌ ์‚ฌ์šฉ์ž๊ฐ€ ๋™์‹œ์— ์ฝ”๋“œ๋ฅผ ํŽธ์ง‘ํ•˜๊ณ  ๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ ์‹ค์‹œ๊ฐ„์œผ๋กœ ๋™๊ธฐํ™”ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.ย +**ํ˜‘์—… ๊ธฐ๋Šฅ** | ์‹ค์‹œ๊ฐ„ ํ˜‘์—… | ํŒ€ ๊ฐœ๋ฐœ ํšจ์œจ์„ฑ ์ฆ๋Œ€ |ย 
-  ์ฝ”๋“œ ๋ฆฌ๋ทฐ: ''AI'' ๊ธฐ๋ฐ˜์˜ ์ฝ”๋“œ ํ’ˆ์งˆ ๊ฒ€ํ†  ๊ธฐ๋Šฅ์„ ํ†ตํ•ด ๋™๋ฃŒ ๊ฐ„ ์ฝ”๋“œ ๋ฆฌ๋ทฐ๋ฅผ ํšจ์œจ์ ์œผ๋กœ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.ย +**๋ฉ€ํ‹ฐ๋ชจ๋‹ฌ** | ์ด๋ฏธ์ง€/์Œ์„ฑ ๊ธฐ๋ฐ˜ ์ฝ”๋”ฉ | ์ƒˆ๋กœ์šด ๊ฐœ๋ฐœ ํŒจ๋Ÿฌ๋‹ค์ž„ |ย 
-  ๋ธŒ๋žœ์น˜ ๊ด€๋ฆฌ: ''Git'' ๋ธŒ๋žœ์น˜ ์ƒ์„ฑ, ์ „ํ™˜, ๋ณ‘ํ•ฉ ๋“ฑ ๋ณต์žกํ•œ ์›Œํฌํ”Œ๋กœ์šฐ๋ฅผ ์ง๊ด€์ ์œผ๋กœ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.ย +**๊ฐœ์ธํ™”** | ์‚ฌ์šฉ์ž ๋งž์ถค AI | ๊ฐœ์ธํ™”๋œ ๊ฐœ๋ฐœ ๊ฒฝํ—˜ |
-  ์ด์Šˆ ์ถ”์ : ''GitHub'', ''GitLab'' ๋“ฑ ์™ธ๋ถ€ ์ด์Šˆ ์ถ”์  ์‹œ์Šคํ…œ๊ณผ ์—ฐ๋™ํ•˜์—ฌ ์ž‘์—… ๊ด€๋ฆฌ๋ฅผ ์šฉ์ดํ•˜๊ฒŒ ํ•ฉ๋‹ˆ๋‹ค.+
  
 ---- ----
  
-==== 5. ํ™œ์šฉ ์‚ฌ๋ก€ ====+===== ๐Ÿ“š ๊ด€๋ จ ๋งํฌ =====
  
-=== 5.1. ์›น ๊ฐœ๋ฐœ ===+  * [[wiki:it:ai:start|AI ๊ธฐ์ˆ  ๊ฐ€์ด๋“œ ๋ฉ”์ธ]]ย 
 +  * [[wiki:it:ai:services:start|AI ์„œ๋น„์Šค ๋ฐ ํ”Œ๋žซํผ]]ย 
 +  * [[wiki:it:ai:models:gpt|OpenAI GPT ๋ชจ๋ธ]]ย 
 +  * [[wiki:it:ai:models:claude|Anthropic Claude ๋ชจ๋ธ]]ย 
 +  * [[wiki:it:ai:models:gemini|Google Gemini ๋ชจ๋ธ]]
  
-  * ''React''/''Vue'' ์ปดํฌ๋„ŒํŠธ: ์žฌ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ''UI'' ์ปดํฌ๋„ŒํŠธ ์ฝ”๋“œ๋ฅผ ์ž๋™์œผ๋กœ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค. 
-  * ''API'' ์—”๋“œํฌ์ธํŠธ: ''RESTful API''์˜ ๊ฒฝ๋กœ, ๋ฉ”์„œ๋“œ, ๋ฐ์ดํ„ฐ ๋ชจ๋ธ ๋“ฑ์„ ํฌํ•จํ•œ ์ฝ”๋“œ๋ฅผ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค. 
-  * ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ฟผ๋ฆฌ: ''SQL'' ์ฟผ๋ฆฌ ๋ฐ ''ORM''(Object-Relational Mapping) ์ฟผ๋ฆฌ๋ฅผ ์ตœ์ ํ™”ํ•˜๊ณ  ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค. 
-  * ์ธ์ฆ ์‹œ์Šคํ…œ: ๋กœ๊ทธ์ธ, ํšŒ์›๊ฐ€์ž…, ๊ถŒํ•œ ๋ถ€์—ฌ ๋“ฑ ๊ธฐ๋ณธ ์ธ์ฆ ๊ธฐ๋Šฅ์„ ๊ตฌํ˜„ํ•˜๋Š” ์ฝ”๋“œ๋ฅผ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค. 
  
-=== 5.2. ๋ฐฑ์—”๋“œ ๊ฐœ๋ฐœ === 
- 
-  * ์„œ๋ฒ„ ์ฝ”๋“œ: ''Node.js'', ''Python'', ''Java'' ๋“ฑ ๋‹ค์–‘ํ•œ ์–ธ์–ด๋กœ ์„œ๋ฒ„ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ๊ธฐ๋ณธ ๊ตฌ์กฐ๋ฅผ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค. 
-  * ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๋ชจ๋ธ: ''ORM'' ๋ชจ๋ธ ๋ฐ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์Šคํ‚ค๋งˆ ์ •์˜๋ฅผ ๋•์Šต๋‹ˆ๋‹ค. 
-  * ๋ฏธ๋“ค์›จ์–ด: ์ธ์ฆ, ๋กœ๊น…, ์—๋Ÿฌ ์ฒ˜๋ฆฌ ๋“ฑ ๊ณตํ†ต ๋ฏธ๋“ค์›จ์–ด ์ฝ”๋“œ๋ฅผ ์ƒ์„ฑํ•˜๊ณ  ์ ์šฉํ•ฉ๋‹ˆ๋‹ค. 
-  * ํ…Œ์ŠคํŠธ ์ฝ”๋“œ: ์„œ๋ฒ„ ๋กœ์ง์— ๋Œ€ํ•œ ๋‹จ์œ„ ๋ฐ ํ†ตํ•ฉ ํ…Œ์ŠคํŠธ ์ฝ”๋“œ๋ฅผ ์ž๋™์œผ๋กœ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค. 
- 
-=== 5.3. ๋ชจ๋ฐ”์ผ ๊ฐœ๋ฐœ === 
- 
-  * ''React Native'': ํฌ๋กœ์Šค ํ”Œ๋žซํผ ๋ชจ๋ฐ”์ผ ์•ฑ ๊ฐœ๋ฐœ์„ ์œ„ํ•œ ์ฝ”๋“œ๋ฅผ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค. 
-  * ''Flutter'': ''Dart'' ๊ธฐ๋ฐ˜์˜ ''Flutter'' ๋ชจ๋ฐ”์ผ ์•ฑ ๊ฐœ๋ฐœ์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค. 
-  * ๋„ค์ดํ‹ฐ๋ธŒ ๊ฐœ๋ฐœ: ''iOS'' (Swift/Objective-C) ๋ฐ ''Android'' (Kotlin/Java) ๋„ค์ดํ‹ฐ๋ธŒ ์ฝ”๋“œ ์ƒ์„ฑ์„ ๋•์Šต๋‹ˆ๋‹ค. 
-  * ''API'' ์—ฐ๋™: ๋ฐฑ์—”๋“œ ์„œ๋น„์Šค์™€์˜ ''API'' ์—ฐ๋™ ์ฝ”๋“œ๋ฅผ ์ƒ์„ฑํ•˜์—ฌ ๋ฐ์ดํ„ฐ ํ†ต์‹ ์„ ์šฉ์ดํ•˜๊ฒŒ ํ•ฉ๋‹ˆ๋‹ค. 
- 
----- 
- 
-==== 6. ์„ฑ๋Šฅ ๋ฐ ๋ณด์•ˆ ==== 
- 
-=== 6.1. ์ฝ”๋“œ ํ’ˆ์งˆ ์ตœ์ ํ™” === 
- 
-  * ๋ฆฐํŒ…: ''ESLint'', ''Pylint'' ๋“ฑ ์ธ๊ธฐ ์žˆ๋Š” ๋ฆฐํŒ… ๋„๊ตฌ๋ฅผ ํ†ตํ•ฉํ•˜์—ฌ ์ฝ”๋“œ ์Šคํƒ€์ผ ๋ฐ ์ž ์žฌ์  ์˜ค๋ฅ˜๋ฅผ ๊ฒ€์‚ฌํ•ฉ๋‹ˆ๋‹ค. 
-  * ํฌ๋งคํŒ…: ''Prettier'', ''Black'' ๋“ฑ ์ž๋™ ํฌ๋งทํŒ… ๋„๊ตฌ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ผ๊ด€๋œ ์ฝ”๋“œ ์Šคํƒ€์ผ์„ ์œ ์ง€ํ•ฉ๋‹ˆ๋‹ค. 
-  * ํƒ€์ž… ์ฒดํฌ: ''TypeScript'', ''mypy'' ๋“ฑ ํƒ€์ž… ๊ฒ€์‚ฌ ๋„๊ตฌ๋ฅผ ํ™œ์šฉํ•˜์—ฌ ๋Ÿฐํƒ€์ž„ ์˜ค๋ฅ˜๋ฅผ ์‚ฌ์ „์— ๋ฐฉ์ง€ํ•ฉ๋‹ˆ๋‹ค. 
-  * ํ…Œ์ŠคํŠธ ์ปค๋ฒ„๋ฆฌ์ง€: ์ฝ”๋“œ ์ปค๋ฒ„๋ฆฌ์ง€ ๋ถ„์„ ๋„๊ตฌ๋ฅผ ํ†ตํ•ด ํ…Œ์ŠคํŠธ๋˜์ง€ ์•Š์€ ์ฝ”๋“œ๋ฅผ ์‹๋ณ„ํ•˜๊ณ  ๊ฐœ์„ ์„ ์ œ์•ˆํ•ฉ๋‹ˆ๋‹ค. 
- 
-=== 6.2. ๊ฐœ๋ฐœ ํšจ์œจ์„ฑ ์ฆ๋Œ€ === 
- 
-  * ์Šค๋‹ˆํŽซ: ์ž์ฃผ ์‚ฌ์šฉํ•˜๋Š” ์ฝ”๋“œ ์กฐ๊ฐ์„ ์‰ฝ๊ฒŒ ์‚ฝ์ž…ํ•˜๊ณ  ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. 
-  * ๋งคํฌ๋กœ: ๋ฐ˜๋ณต์ ์ธ ์ž‘์—…์„ ์ž๋™ํ™”ํ•˜๋Š” ์ปค์Šคํ…€ ๋งคํฌ๋กœ๋ฅผ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. 
-  * ๋‹จ์ถ•ํ‚ค: ์‚ฌ์šฉ์ž ์ •์˜ ๊ฐ€๋Šฅํ•œ ๋‹จ์ถ•ํ‚ค๋ฅผ ํ†ตํ•ด ํšจ์œจ์ ์ธ ํ‚ค๋ณด๋“œ ๊ธฐ๋ฐ˜ ์ž‘์—…์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค. 
-  * ํ”Œ๋Ÿฌ๊ทธ์ธ: ๋‹ค์–‘ํ•œ ํ™•์žฅ ๊ธฐ๋Šฅ ๋ฐ ์ปค์Šคํ„ฐ๋งˆ์ด์ง•์„ ์œ„ํ•œ ํ”Œ๋Ÿฌ๊ทธ์ธ ์‹œ์Šคํ…œ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. 
- 
-=== 6.3. ๋ณด์•ˆ ๋ฐ ๋ฐ์ดํ„ฐ ๋ณดํ˜ธ === 
- 
-  * ์ทจ์•ฝ์  ์Šค์บ”: ''AI'' ๊ธฐ๋ฐ˜์œผ๋กœ ์ฝ”๋“œ ๋‚ด์˜ ''SQL Injection'', ''XSS'' ๋“ฑ ์ผ๋ฐ˜์ ์ธ ๋ณด์•ˆ ์ทจ์•ฝ์ ์„ ์ž๋™์œผ๋กœ ๊ฒ€์‚ฌํ•ฉ๋‹ˆ๋‹ค. 
-  * ์˜์กด์„ฑ ๊ฒ€์‚ฌ: ์‚ฌ์šฉ ์ค‘์ธ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ๋ฐ ํŒจํ‚ค์ง€์˜ ์•Œ๋ ค์ง„ ๋ณด์•ˆ ์ทจ์•ฝ์ ์„ ํ™•์ธํ•˜๊ณ  ์—…๋ฐ์ดํŠธ๋ฅผ ๊ถŒ์žฅํ•ฉ๋‹ˆ๋‹ค. 
-  * ๋กœ์ปฌ ์ฒ˜๋ฆฌ: ๋ฏผ๊ฐํ•œ ์ฝ”๋“œ๋‚˜ ๋ฐ์ดํ„ฐ๋ฅผ ''AI'' ๋ชจ๋ธ๋กœ ์ „์†กํ•˜๊ธฐ ์ „์— ๋กœ์ปฌ์—์„œ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ๋Š” ์˜ต์…˜์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. 
-  * ์•”ํ˜ธํ™”: ์ „์†ก ๋ฐ ์ €์žฅ๋˜๋Š” ๋ชจ๋“  ๋ฐ์ดํ„ฐ๋Š” ๊ฐ•๋ ฅํ•œ ์•”ํ˜ธํ™” ๊ธฐ์ˆ ๋กœ ๋ณดํ˜ธ๋ฉ๋‹ˆ๋‹ค. 
-  * ์ ‘๊ทผ ์ œ์–ด: ํŒ€ ํ™˜๊ฒฝ์—์„œ ๊ถŒํ•œ ๊ธฐ๋ฐ˜์˜ ์ฝ”๋“œ ์ ‘๊ทผ ์ œ์–ด๋ฅผ ํ†ตํ•ด ๋ณด์•ˆ์„ ๊ฐ•ํ™”ํ•ฉ๋‹ˆ๋‹ค. 
-  * ๋ฐฑ์—… ๋ฐ ๋ณต๊ตฌ: ํ”„๋กœ์ ํŠธ ์ž๋™ ๋ฐฑ์—… ๋ฐ ์‹ค์ˆ˜๋กœ ์‚ญ์ œ๋œ ์ฝ”๋“œ ๋ณต๊ตฌ ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•˜์—ฌ ๋ฐ์ดํ„ฐ ์†์‹ค์„ ๋ฐฉ์ง€ํ•ฉ๋‹ˆ๋‹ค. 
- 
----- 
- 
-==== 7. ํ†ตํ•ฉ ๋ฐ ํ™•์žฅ์„ฑ ==== 
- 
-=== 7.1. ์™ธ๋ถ€ ๋„๊ตฌ ์—ฐ๋™ === 
- 
-  * ํ„ฐ๋ฏธ๋„: ๋‚ด์žฅ๋œ ํ†ตํ•ฉ ํ„ฐ๋ฏธ๋„์„ ํ†ตํ•ด ๊ฐœ๋ฐœ ํ™˜๊ฒฝ์—์„œ ์ง์ ‘ ๋ช…๋ น์–ด ์‹คํ–‰ ๋ฐ ์Šคํฌ๋ฆฝํŠธ ๊ด€๋ฆฌ๊ฐ€ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค. 
-  * ''Docker'': ์ปจํ…Œ์ด๋„ˆ ๊ธฐ๋ฐ˜ ๊ฐœ๋ฐœ ํ™˜๊ฒฝ์„ ์‰ฝ๊ฒŒ ์„ค์ •ํ•˜๊ณ  ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ๋„๋ก ''Docker''์™€ ์—ฐ๋™๋ฉ๋‹ˆ๋‹ค. 
-  * ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค: ๋‹ค์–‘ํ•œ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ํด๋ผ์ด์–ธํŠธ์™€ ํ†ตํ•ฉ๋˜์–ด ''DB'' ์Šคํ‚ค๋งˆ ํƒ์ƒ‰ ๋ฐ ์ฟผ๋ฆฌ ์‹คํ–‰์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค. 
-  * ํด๋ผ์šฐ๋“œ: ''AWS'', ''GCP'', ''Azure'' ๋“ฑ ์ฃผ์š” ํด๋ผ์šฐ๋“œ ํ”Œ๋žซํผ์˜ ''SDK'' ๋ฐ ''CLI''์™€ ์—ฐ๋™ํ•˜์—ฌ ํด๋ผ์šฐ๋“œ ์ž์› ๊ด€๋ฆฌ๋ฅผ ๋•์Šต๋‹ˆ๋‹ค. 
- 
-=== 7.2. API ๋ฐ ํ”Œ๋Ÿฌ๊ทธ์ธ ์‹œ์Šคํ…œ === 
- 
-  * ''REST API'': ์™ธ๋ถ€ ์„œ๋น„์Šค ๋ฐ ์‹œ์Šคํ…œ๊ณผ ์—ฐ๋™ํ•˜๊ธฐ ์œ„ํ•œ ''REST API''๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. 
-  * ์›นํ›…: ํŠน์ • ์ด๋ฒคํŠธ ๋ฐœ์ƒ ์‹œ ์ž๋™์œผ๋กœ ์•Œ๋ฆผ์„ ๋ณด๋‚ด๋Š” ์›นํ›… ๊ธฐ๋Šฅ์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค. 
-  * ํ”Œ๋Ÿฌ๊ทธ์ธ ์‹œ์Šคํ…œ: ๊ฐœ๋ฐœ์ž๊ฐ€ ์ง์ ‘ ์ปค์Šคํ…€ ๊ธฐ๋Šฅ์„ ์ถ”๊ฐ€ํ•˜๊ฑฐ๋‚˜ ๊ธฐ์กด ๊ธฐ๋Šฅ์„ ํ™•์žฅํ•  ์ˆ˜ ์žˆ๋Š” ์œ ์—ฐํ•œ ํ”Œ๋Ÿฌ๊ทธ์ธ ์‹œ์Šคํ…œ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. 
-  * ๋งˆ์ผ“ํ”Œ๋ ˆ์ด์Šค: ๋‹ค๋ฅธ ์‚ฌ์šฉ์ž๋“ค์ด ๊ฐœ๋ฐœํ•œ ๋‹ค์–‘ํ•œ ํ”Œ๋Ÿฌ๊ทธ์ธ์„ ๋‹ค์šด๋กœ๋“œํ•˜๊ณ  ํ™œ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๋งˆ์ผ“ํ”Œ๋ ˆ์ด์Šค๋ฅผ ์šด์˜ํ•ฉ๋‹ˆ๋‹ค. 
- 
----- 
- 
-==== 8. ๊ฐ€๊ฒฉ ์ •์ฑ… ==== 
- 
-=== 8.1. ์š”๊ธˆ์ œ ๋น„๊ต === 
- 
-''Cursor''๋Š” ๊ฐœ์ธ ์‚ฌ์šฉ์ž๋ถ€ํ„ฐ ๋Œ€๊ทœ๋ชจ ์กฐ์ง๊นŒ์ง€ ๋‹ค์–‘ํ•œ ์š”๊ตฌ์‚ฌํ•ญ์„ ์ถฉ์กฑ์‹œํ‚ค๊ธฐ ์œ„ํ•œ ์—ฌ๋Ÿฌ ์š”๊ธˆ์ œ๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. 
- 
-  * ''Free'': ๋ฌด๋ฃŒ - ๊ธฐ๋ณธ ''AI'' ๊ธฐ๋Šฅ ์ œ๊ณต, ์›” 500ํšŒ ์ฝ”๋“œ ์ƒ์„ฑ ์ œํ•œ. 
-  * ''Pro'': $20/์›” - ๋ฌด์ œํ•œ ์ฝ”๋“œ ์ƒ์„ฑ, ๊ณ ๊ธ‰ ''AI'' ๊ธฐ๋Šฅ ๋ฐ ์šฐ์„  ์ง€์›. 
-  * ''Team'': $25/์›”/์‚ฌ์šฉ์ž - ํŒ€ ํ˜‘์—… ๊ธฐ๋Šฅ, ๊ด€๋ฆฌ ๋„๊ตฌ, ์ „์šฉ ์ง€์›. 
-  * ''Enterprise'': ๋งž์ถคํ˜• - ๋Œ€๊ทœ๋ชจ ์กฐ์ง์„ ์œ„ํ•œ ๊ณ ๊ธ‰ ๋ณด์•ˆ, ์˜จํ”„๋ ˆ๋ฏธ์Šค ๋ฐฐํฌ ์˜ต์…˜, ์ „๋‹ด ๊ณ ๊ฐ ์ง€์›. 
- 
-=== 8.2. ๊ฐ ์š”๊ธˆ์ œ ํฌํ•จ ๊ธฐ๋Šฅ === 
- 
-  * ''AI'' ์ฑ„ํŒ…: ์ฝ”๋“œ ๊ด€๋ จ ์งˆ๋ฌธ ๋ฐ ๋‹ต๋ณ€, ์•„์ด๋””์–ด ๋ธŒ๋ ˆ์ธ์Šคํ† ๋ฐ ๋“ฑ ''AI''์™€์˜ ๋Œ€ํ™”ํ˜• ๊ฐœ๋ฐœ ์ง€์›. 
-  * ์ฝ”๋“œ ๋ฆฌ๋ทฐ: ''AI'' ๊ธฐ๋ฐ˜์˜ ์ฝ”๋“œ ํ’ˆ์งˆ ๊ฒ€ํ†  ๋ฐ ๊ฐœ์„  ์ œ์•ˆ. 
-  * ๋ฌธ์„œํ™”: ''API'' ๋ฌธ์„œ, ์ฝ”๋“œ ์ฃผ์„ ๋“ฑ ๊ฐœ๋ฐœ ๋ฌธ์„œ ์ž๋™ ์ƒ์„ฑ. 
-  * ๋ฒ„์ „ ๊ด€๋ฆฌ: ''Git'' ํ†ตํ•ฉ ๋ฐ ๋ธŒ๋žœ์น˜ ๊ด€๋ฆฌ ๊ธฐ๋Šฅ. 
- 
----- 
- 
-==== 9. ํ•™์Šต ๋ฐ ์ง€์› ==== 
- 
-=== 9.1. ํ•™์Šต ์ž๋ฃŒ === 
- 
-  * ํŠœํ† ๋ฆฌ์–ผ: ''Cursor''์˜ ๋‹ค์–‘ํ•œ ๊ธฐ๋Šฅ์„ ๋‹จ๊ณ„๋ณ„๋กœ ์„ค๋ช…ํ•˜๋Š” ์‚ฌ์šฉ ๊ฐ€์ด๋“œ. 
-  * ๋น„๋””์˜ค ์ฝ”์Šค: ํ•ต์‹ฌ ๊ธฐ๋Šฅ ๋ฐ ๊ณ ๊ธ‰ ํ™œ์šฉ๋ฒ•์„ ์‹œ๊ฐ์ ์œผ๋กœ ๋ณด์—ฌ์ฃผ๋Š” ์˜จ๋ผ์ธ ํ•™์Šต ํ”„๋กœ๊ทธ๋žจ. 
-  * ๋ฌธ์„œํ™”: ์ƒ์„ธํ•œ ''API'' ์ฐธ์กฐ ๋ฌธ์„œ ๋ฐ ๊ธฐ๋Šฅ๋ณ„ ์‚ฌ์šฉ๋ฒ• ๋ฌธ์„œ. 
-  * ์˜ˆ์ œ ํ”„๋กœ์ ํŠธ: ์‹ค์ œ ๊ฐœ๋ฐœ ์‹œ๋‚˜๋ฆฌ์˜ค๋ฅผ ๋ฐ˜์˜ํ•œ ์˜ˆ์ œ ํ”„๋กœ์ ํŠธ๋ฅผ ํ†ตํ•ด ํ•™์Šต์„ ๋•์Šต๋‹ˆ๋‹ค. 
- 
-=== 9.2. ์ปค๋ฎค๋‹ˆํ‹ฐ ๋ฐ ์ง€์› === 
- 
-  * ํฌ๋Ÿผ: ์‚ฌ์šฉ์ž ์ปค๋ฎค๋‹ˆํ‹ฐ๋ฅผ ํ†ตํ•ด ์งˆ๋ฌธํ•˜๊ณ  ๋‹ต๋ณ€์„ ์–ป์„ ์ˆ˜ ์žˆ๋Š” ์˜จ๋ผ์ธ ํฌ๋Ÿผ. 
-  * ''GitHub'': ์˜คํ”ˆ์†Œ์Šค ๊ธฐ์—ฌ, ๋ฒ„๊ทธ ๋ฆฌํฌํŠธ ๋ฐ ๊ธฐ๋Šฅ ์š”์ฒญ์„ ์œ„ํ•œ ''GitHub'' ์ €์žฅ์†Œ. 
-  * ''Discord'': ์‹ค์‹œ๊ฐ„ ์ฑ„ํŒ…์„ ํ†ตํ•œ ์‚ฌ์šฉ์ž ๊ฐ„ ๊ต๋ฅ˜ ๋ฐ ๊ธฐ์ˆ  ์ง€์› ์ฑ„๋„. 
-  * ๋ธ”๋กœ๊ทธ: ''Cursor''์˜ ์ตœ์‹  ๊ธฐ๋Šฅ ์—…๋ฐ์ดํŠธ, ๊ฐœ๋ฐœ ํŒ, ํ™œ์šฉ ์‚ฌ๋ก€ ๋“ฑ์„ ๊ณต์œ ํ•˜๋Š” ๊ณต์‹ ๋ธ”๋กœ๊ทธ. 
- 
----- 
  
-==== ๊ด€๋ จ ๋งํฌ ==== 
  
-*   [[wiki:it:ai:introduction|AI ๊ธฐ์ˆ  ๊ฐ€์ด๋“œ ๋ฉ”์ธ]] 
-*   [[wiki:it:ai:services:introduction|AI ์„œ๋น„์Šค ๋ฐ ํ”Œ๋žซํผ]] 
-*   [[wiki:it:ai:services:genspark|Genspark AI ์›น์‚ฌ์ดํŠธ ์ƒ์„ฑ]] 
-*   [[wiki:it:ai:services:perplexity|Perplexity AI ๊ฒ€์ƒ‰]] 
-*   [[wiki:it:ai:services:dokuwiki_ai|DokuWiki AI ๊ธฐ๋Šฅ]] 
wiki/it/ai/services/cursor.1753774601.txt.gz ยท ๋งˆ์ง€๋ง‰์œผ๋กœ ์ˆ˜์ •๋จ: ์ €์ž syjang0803

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki