JavaRush /Курсы /Claude code /Карта поверхностей и workflow курса

Карта поверхностей и workflow курса

Claude code
1 уровень , 1 лекция
Открыта

1. У Claude Code не один экран, а несколько

Поверхность — это точка входа, через которую Claude Code встраивается в работу. Одна поверхность удобна для запуска в проекте, другая — для просмотра изменений, третья — для командных сценариев. Если перепутаете роли, будете ждать не того.

Владеть всеми сразу не нужно. На старте опаснее распылиться, чем «недоиспользовать возможности». Claude Code ценен не числом кнопок, а ясностью пути от задачи до проверяемого результата.

Поверхность Что это простыми словами Роль в курсе
Терминал (CLI) Claude запускается прямо в папке проекта Основная рабочая поверхность
IDE: VS Code / JetBrains Вы видите файлы, выделение, diff и результат изменений Постоянная поверхность для проверки и реальной работы
Desktop / web / cloud Дополнительные способы доступа к Claude Полезно знать, что они есть
Remote / mobile Доступ не с основной рабочей машины или не из IDE Просто знать о существовании, а не опираться на это в начале
Slack / GitHub / CI Командные и автоматизированные сценарии Важны, но не на первом шаге
Browser / computer-use сценарии Более специальные режимы работы Скорее расширение, чем базовый режим

Заучивать названия не нужно — нужна роль. Кнопки и названия со временем меняются, идея держится: одна поверхность помогает работать внутри проекта, другая — проверять, третья — встраивать Claude в команду.

2. Курс стартует с terminal-first

Терминал важен не потому, что «настоящие разработчики любят чёрные окна», а потому, что там Claude Code максимально близко к проекту: стартует в конкретной директории, видит конкретный репозиторий, читает файлы именно этой папки. Не «код из переписки», а живая структура.

Возьмём учебный репозиторий Commerce OS: заказы, поддержка, платежи, аналитика. Запустив Claude из терминала в корне, вы даёте сигнал: вот рабочее пространство, вот границы. Это не браузерный чат, где вы пересказываете проект: «там где-то сервис заказов, а файл, кажется, на букву O…».

cd commerce-os   # переходим в репозиторий проекта
claude           # запускаем Claude Code внутри этой папки

Ничего хакерского — и это плюс. Claude не угадывает, где проект, он уже стоит внутри.

Terminal-first не означает terminal-only. IDE не запрещена. Скелет работы мы собираем вокруг запуска через терминал, остальные поверхности добавляем там, где они полезны.

Терминал держит рядом три вещи, которые в разработке с ИИ должны жить вместе: проект, Claude и проверки. Привычка стартовать из проекта снимает вечный вопрос «а этот ответ вообще про мой проект?». Терминал — не самый красивый старт, а самый ясный.

3. IDE рядом, а не вместо

Тут легко уйти в ложный выбор: либо «всё только в терминале», либо «зачем CLI, когда есть окно с кнопками». Оба слабые. IDE — не замена Claude Code, а поверхность проверки: читать реальные файлы, видеть диапазоны строк, смотреть diff рядом с кодом, замечать, что именно поменялось.

Claude объясняет свою правку — IDE показывает сам файл, соседний код, контекст. Вы видите не «кусочек ответа ИИ», а часть реальной системы.

Терминал запускает процесс. IDE проверяет результат. Claude что-то предложил — смотрите в файле и в diff, а не только в тексте.

4. Workflow курса: от проекта к артефакту

Карта в голове — соберём схему. К одному маршруту мы будем возвращаться весь курс: запуск из проекта, понятное состояние репозитория, визуальная проверка, проверки поведения, решение человека на выходе. Примите её как базовую — и «магия» ИИ становится обычным инженерным процессом.

flowchart TD
    A[Терминал: Claude внутри проекта] --> B[Git: понятное состояние репозитория]
    B --> C[IDE: чтение файлов и визуальный diff]
    C --> D[Проверки: diff, tests, build, lint]
    D --> E[Человек принимает решение]
    E --> F[Результат, который можно показать и проверить]

Именно в этой последовательности Claude Code перестаёт быть генератором сюрпризов.

Шаг Что происходит Зачем это нужно
Терминал Claude запускается в корне проекта Он работает с реальной кодовой базой, а не с пересказом
Git У репозитория есть понятное состояние Вы понимаете, что было изменено именно в этой итерации
IDE Вы читаете файлы и смотрите diff глазами Изменения становятся видимыми и проверяемыми
Проверки Запускаются diff, тесты, сборка и другие проверки Вы проверяете не уверенность Claude, а поведение проекта
Человеческое решение Кто-то осознанно говорит «это принимаем» Ответственность остаётся у разработчика

Главное — последнее звено. Соблазн думать про ИИ как про сокращение пути: «Claude ответил — задача решена». Мыслите иначе: Claude дал материал для решения, не само решение. Финальная точка — не «готово» от модели, а момент, когда результат можно показать коллеге.

Отсюда PR-ready artifact: изменения в состоянии, когда их можно отдать на ревью. Открывать pull request прямо сейчас не нужно — но код, diff, результаты проверок и описание уже готовы к чужим глазам. Даже если работаете один: код, который стыдно показать коллеге, и самому принимать рано.

Тот же маршрут короче:

Терминал → проект → изменения → IDE → проверки → решение человека

Терминал — старт и контекст. Git — страховка и история. IDE — видимость. Проверки — доказательства. Человек — последний фильтр. Уберите звено — процесс шатается. Особенно если это чтение diff.

5. Поверхности, которые знаем, но не включаем сразу

Новый инструмент будит порыв: «раз есть desktop, web, remote, Slack, CI, mobile, облако — открою всё сразу». Понятный и невыгодный. На старте достаточно знать, что эти поверхности существуют, не таща их в базовый процесс. Иначе вместо рабочей схемы выйдет экскурсия по интерфейсам.

Поверхность Зачем помнить о ней Как к ней относиться на старте
Desktop / web / cloud Это ещё один способ получить доступ к Claude Полезно знать, но не строить на этом базовый рабочий процесс
Remote / mobile Может помочь, когда вы не у основной машины Не основная рабочая поверхность для обучения
Slack Командные сценарии и уведомления Не точка старта индивидуальной разработки
GitHub / CI Автоматизация и командный цикл Важная тема, но не первый рабочий стол
Browser / computer-use Специальные сценарии взаимодействия Скорее расширение возможностей, чем база

Поверхности не второсортные: CI и командные сценарии в GitHub реально ускоряют команду. Но пока не устоялась цепочка «проект → diff → проверки → решение», лишнее не помогает, а шумит.

Зрелость тут скромная: вы знаете про разные режимы, но берёте минимально достаточный набор под задачу. Сейчас он короткий: терминал плюс IDE. Остальное — знание карты, не приказ бежать во все стороны.

6. Рабочий день в Commerce OS: цепочка поверхностей

Соберём из карты историю. Вы открыли Commerce OS, задача будничная: в списке заказов что-то странно с сортировкой. Разбора бага тут нет — важен только маршрут по поверхностям: куда смотреть и зачем.

commerce-os/
  orders/
  payments/
  support/
  dashboard/

Вы заходите в проект через терминал, запускаете Claude и просите найти, где в модуле orders живёт логика сортировки. Claude смотрит на реальную папку commerce-os, не на пересказ. Показал файлы или предложил правку — переходите в IDE и смотрите глазами: метод может жить не в том сервисе, рядом может быть похожая логика, правка может зацепить лишний файл.

Делается правка — не «поверить на слово», а проверить diff и поведение. Даже в крошечном сценарии полезен формат:

Изменено:
- orders/OrderService.java

Проверено:
- список заказов открывается
- новые заказы отображаются сверху

Это уже понятный след работы. Результат не просто «написан», а объясним и проверяем. Этот переход собирается не в одной поверхности, а в их комбинации.

Сожмёте всё в одну точку входа — процесс деформируется. Только терминал — тяжелее контролировать изменения глазами. Только IDE без запуска Claude — теряется связь с рабочим контекстом. Только веб — пересказываете проект вместо работы с ним. Только Slack — активность без инженерной опоры.

Workflow курса спокоен именно потому, что расставляет поверхности по ролям. Терминал запускает работу изнутри проекта. IDE заземляет изменения. Проверки подтверждают результат. Человек решает.

7. Остальной стек: Java, Gradle и Python

В прошлой лекции мы поставили два «билета на вход» — Git и Node.js. Руками и заранее: без Git не собирается workflow, Node.js страхует установку CLI. Теперь — остальной стек: Java (JDK), Gradle и Python. Подход тут другой.

Развилка: стек можно поставить руками сейчас, а можно дождаться следующей лекции и попросить установить его сам Claude Code. Советую второй вариант: установка стека станет первым живым упражнением по теме курса.

Почему. Git и Node.js нужны до появления CLI — иначе их некому поставить. А Java, Gradle и Python нужны для работы над проектом, к этому моменту CLI уже будет. Установка превращается в реальную задачу: видите, как агент ставит инструмент, проверяет версию, при необходимости чинит окружение. Полезнее, чем молча скопировать команду из гайда.

Инструмент Зачем в курсе Когда понадобится
JDK (Java) Backend учебного проекта Commerce OS написан на Java С первых же содержательных задач по проекту
Gradle Сборка и запуск Java-проекта Вместе с JDK
Python Понадобится позже, в блоке про архетипы MVP-проектов Ближе к середине курса

Отдельно про Gradle, потому что здесь легко запутаться. В реальном Java-проекте сборку запускают не глобальной командой gradle, а через Gradle Wrapper — скрипт ./gradlew (или gradlew.bat на Windows), который лежит прямо в репозитории. Wrapper сам скачивает и использует ту версию Gradle, которая прописана в проекте. Это гарантирует, что у всех участников команды сборка идёт одной и той же версией, независимо от того, что у кого установлено глобально.

Тогда зачем вообще ставить Gradle глобально? Ровно для одного сценария: создать Wrapper в новом проекте с нуля (gradle wrapper). После этого вы переключаетесь на ./gradlew и про глобальный Gradle забываете. То есть глобальная установка — это «стартер» для новых проектов, а повседневная работа в готовом проекте идёт через Wrapper. Запомните это сразу, чтобы не словить классическую путаницу «у меня глобально одна версия, а проект хочет другую»: в готовом проекте версию диктует Wrapper, а не ваша глобальная установка.

Вариант А: поставить руками сейчас

Команды по операционным системам. Та же оговорка про version-resilience: точные строки сверяйте с официальной документацией, версии подбирайте под актуальную LTS.

# macOS — через Homebrew
brew install openjdk        # JDK (Java)
brew install gradle         # Gradle (глобально, для bootstrap новых проектов)
brew install python         # Python 3
# Linux — через пакетный менеджер
sudo apt install default-jdk gradle python3   # Debian / Ubuntu
sudo dnf install java-latest-openjdk gradle python3   # Fedora / RHEL
# Windows — через winget
winget install --id EclipseAdoptium.Temurin.25.JDK
winget install --id Gradle.Gradle
winget install --id Python.Python.3.13

Проверка после установки (в новом окне терминала):

java -version            # например: openjdk version "25"
gradle -version          # например: Gradle 9.5.x
python3 --version        # например: Python 3.13.x

Вариант Б: попросить Claude Code

Это тизер следующей лекции, но логика здесь важна уже сейчас. После того как в третьей лекции вы установите и проверите CLI, установку остального стека можно отдать самому Claude Code как первую реальную задачу. Выглядит это примерно так — вы открываете сессию и формулируете задачу обычными словами:

Проверь, установлены ли на моей машине JDK, Gradle и Python 3.
Чего не хватает — поставь через мой пакетный менеджер (Homebrew),
после установки покажи версии: java -version, gradle -version, python3 --version.

Обратите внимание, что это не «волшебная команда», а нормальная инженерная постановка задачи: что проверить, что сделать, чем подтвердить результат. Claude Code посмотрит, что уже есть, поставит недостающее тем способом, который живёт на вашей машине, и покажет версии. По сути, вы уже в первой задаче применяете базовую схему курса: задача → действие агента → проверка результата. Установка стека — отличный безопасный полигон, чтобы эту схему почувствовать.

Какой бы вариант вы ни выбрали, итог один: к моменту, когда начнётся содержательная работа над Commerce OS, на машине должны спокойно отвечать java -version, gradle -version и python3 --version. А как именно они туда попали — руками или силами агента — уже дело вкуса.

Комментарии
ЧТОБЫ ПОСМОТРЕТЬ ВСЕ КОММЕНТАРИИ ИЛИ ОСТАВИТЬ КОММЕНТАРИЙ,
ПЕРЕЙДИТЕ В ПОЛНУЮ ВЕРСИЮ