매일 Cursor를 사용중 - 내가 문제를 피하는 방법

2 days ago 2

  • AI 코딩 도구에 대한 과장된 주장이 존재함
    • SaaS를 3일 만에 만들 수 있다는 주장 vs. 완전히 쓸모없다는 주장 → 둘 다 과장되었을 가능성 높음
  • Cursor는 코딩 방식을 완전히 바꿨지만, 여전히 문제점이 있음
  • AI 코딩 도구에 대한 회의적 입장에서 얻은 경험을 공유하고자 함

CursorRules 설정하기

  • .cursorrules 파일이 없으면 시간 낭비 가능성 높음
    • 현재는 .mdc 파일로 변경됨 → CMD + Shift + P → New Cursor Rule로 생성 가능
    • 설정 완료까지 약 10분 소요 → 몇 시간 절약 가능
  • 기술 스택에 맞는 규칙 설정하기
    • Cursor Rules 모음에서 최적의 규칙 선택
    • 최소한의 규칙으로 시작하고 점진적으로 확장하기 → 너무 많은 규칙은 성능 저하 가능성
  • 반복되는 문제는 규칙에 추가해 해결
    • 반복 발생 문제는 규칙에 추가해 AI가 자동 수정하도록 설정
    • 예: JS에서 nullish coalescing (??) 문제 → 규칙에 추가 후 해결
  • 프로젝트 정보 및 코드 구조 설명 추가
    • 파일 상단에 프로젝트 설명 및 코드 구조 명시
    • 특정 파일 구조 및 코드 작성 방식이 있다면 명확히 기재

최상의 출력 얻기

  • 출력 품질 개선의 핵심은 컨텍스트 제공
    • 필요한 함수나 유사한 절차가 있다면 AI에 미리 알려주기
    • 정확한 함수명을 알려줄 필요는 없음 → 코딩 작업을 더 쉽게 만드는 것이 목적
  • 예제 제공하기
    • "see @schedule.ts @utils.ts @ScheduleHeader.tsx" 같은 힌트 제공
    • 비슷한 방식으로 작성된 코드 참조 가능
  • AI는 무작위 코드에 훈련됨
    • 프로젝트별 특정 요구사항은 명확하게 전달해야 성능 개선 가능

빠른 팁 모음

  • Composer(현재는 Agent로 변경됨) → 단순하고 영향이 적은 변경 작업에 적합
  • Chat(Ask) → 대부분의 다른 작업에 적합
    • 수동으로 변경 사항 적용 → 코드 이해 및 수정이 더 정확해짐
  • 코드 맹신 금지
    • AI가 생성한 코드 검토 및 수정 필요
  • 핵심 코드 주기적으로 수동 리팩토링
    • 코드 갭 발견 및 수정 → 이후 AI 코드 품질 개선 가능
  • "이게 최선의 방법인가?" 또는 "다른 방법을 고려했는가?" 질문하기
  • 수동으로 해결이 더 나은 경우 파악하기
  • 버그 수정 시 주의
    • 사소한 버그 외에는 AI가 수정에 어려움을 겪음
    • 코드에 큰 손상을 줄 가능성 존재
  • 중요한 작업 시 AI에게 먼저 질문 유도
    • "완전히 이해했는가?" 질문 후 코드 작성 시작

결론

  • AI 코딩의 장점
    • 뇌가 피곤할 때도 코드 작성 가능
    • 보통은 해결하기 어려운 문제도 해결 가능
  • AI 코딩의 한계
    • "맞아, 이제 문제를 알겠어"라고 하면서 결국 상황이 더 나빠질 수 있음
    • AI를 잘 활용하는 방법을 배우는 것이 중요함 → AI는 사라지지 않을 것이므로 도구로 잘 활용해야 함
  • 주니어 개발자에게 주의 필요 : AI 사용으로 인해 코딩 실력이 약화될 위험이 있음
  • AI 성능은 코딩 주제와 기술 스택에 따라 크게 달라짐
    → AI 성능이 계속 나쁘다면 본인의 잘못이 아닐 가능성 큼

Read Entire Article