~/VibeHandbook
PDF бесплатно

Глава 10

Выбор стека: языки с высоты птичьего полёта

Когда вы направляете AI на создание программ, язык, который вы выбираете, по-прежнему имеет значение — и большое. AI пишет код, но с последствиями живёте вы: как быстро вы выпускаете, как легко развёртывать, как часто вы упираетесь в стену. Хорошая новость в том, что вам не нужно осваивать ни один из этих языков. Вам нужно знать достаточно, чтобы сделать здравый выбор и распознать, когда AI заводит вас куда-то болезненное.

Эта глава пройдётся по языкам, о которых стоит заботиться, по тому, в чём каждый по-настоящему хорош, где он кусается и — что критически важно для vibe coding — насколько хорошо с ним справляются AI-ассистенты. Закончим мы предельно простым руководством по выбору в зависимости от цели.

Замечание перед началом: AI-ассистенты гораздо лучше работают с популярными языками, у которых горы публичного кода, чем с нишевыми. Это не маленький эффект. Зачастую это единственный важнейший фактор того, гладко ли пойдёт ваш проект. Популярность — это фича. Когда язык и его основные фреймворки встречаются в публичных репозиториях миллионы раз, AI видел всякий распространённый паттерн, всякую типичную ошибку и всякое идиоматичное исправление. Когда нет — вы платите за эту скудость провальными попытками и уверенно звучащей чепухой.

Перед именами языков — одна картинка, которую стоит держать в голове: код, который вы пишете, никогда не есть то, что машина действительно выполняет. Что-то посередине превращает ваш текст в работающую программу — либо компилятор (переводит всё заранее в файл, который вы запускаете), либо интерпретатор (читает и выполняет строку за строкой). Выбранный вами язык решает, по какому пути вы идёте.

   ВЫ                  СЕРЕДИНА                      МАШИНА
 ┌────────┐                                        ┌──────────┐
 │ исход. │──┬──▶ COMPILER ──▶ binary file ──────▶ │ работа   │
 │  код   │  │   (Go, Rust)    (one file)          │  на CPU  │
 │(текст) │  │                                     │          │
 └────────┘  └──▶ 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 — бесплатно.