~/VibeHandbook
무료 PDF

챕터 10

스택 고르기: 한눈에 보는 언어들

AI에게 소프트웨어를 만들라고 지시할 때도, 어떤 언어를 고르느냐는 여전히 중요하다 — 그것도 아주 많이. 코드는 AI가 쓰지만 그 결과를 감당하는 건 당신이다. 얼마나 빨리 출시하는지, 배포가 얼마나 쉬운지, 얼마나 자주 벽에 부딪히는지가 거기 달려 있다. 다행인 점은 이 언어들 중 어느 것도 통달할 필요는 없다는 것이다. 합리적인 선택을 내리고, AI가 당신을 고통스러운 곳으로 끌고 갈 때 그것을 알아차릴 정도만 알면 된다.

이 장에서는 신경 쓸 만한 언어들을 하나씩 살펴보며, 각 언어가 진짜로 잘하는 것, 발목을 잡는 지점, 그리고 — 바이브 코딩에서 결정적으로 중요한 — AI 어시스턴트가 그 언어를 얼마나 잘 다루는지를 짚는다. 마지막에는 목표에 따라 고르는 아주 간단한 가이드로 마무리한다.

시작하기 전에 한 가지: AI 어시스턴트는 공개된 코드가 산더미처럼 쌓인 인기 언어를 틈새 언어보다 훨씬 잘 다룬다. 이건 사소한 차이가 아니다. 프로젝트가 매끄럽게 굴러가느냐 마느냐를 가르는 가장 큰 단일 요인인 경우가 많다. 인기는 그 자체로 하나의 기능이다. 어떤 언어와 그 주요 프레임워크가 공개 저장소에 수백만 번 등장하면, AI는 흔한 패턴, 전형적인 에러, 관용적인 해결책을 전부 본 셈이다. 그렇지 않으면, 그 희소함의 대가를 실패한 시도와 그럴듯하게 들리는 헛소리로 치르게 된다.

언어 이름을 보기 전에 머릿속에 담아둘 그림 하나: 당신이 쓰는 코드는 기계가 실제로 돌리는 것이 결코 아니다. 그 사이의 무언가가 당신의 텍스트를 돌아가는 소프트웨어로 바꾼다 — 컴파일러(미리 전부 번역해 실행 파일로 만든다)이거나 인터프리터(한 줄씩 읽으며 실행한다)다. 당신이 고르는 언어가 어느 경로를 탈지 정한다.

   당신                중간 단계                     기계
 ┌────────┐                                        ┌──────────┐
 │소스코드│──┬──▶ COMPILER ──▶ binary file ──────▶ │ CPU에서  │
 │        │  │   (Go, Rust)    (one file)          │  실행    │
 │        │  │                                     │          │
 └────────┘  └──▶ INTERPRETER ──한 줄씩 ─────────▶ │  출력을  │
                  (Python, JS)   읽음              │  표시    │
                                                    └──────────┘
   compiled = 먼저 번역, 나중에 실행
   interpreted = 실행하면서 번역
  1. 10.1JavaScript / TypeScript
  2. 10.2Python
  3. 10.3Go
  4. 10.4Rust
  5. 10.5나머지 언어들에 대한 짧은 한마디
  6. 10.6한눈에 보는 비교
  7. 10.7이국적인 선택의 진짜 비용
  8. 10.8목표로 고르기
  9. 10.9복습과 연습

오프라인으로 보고 싶으세요?

책 전체를 PDF나 EPUB으로 무료로 내려받으세요.