JavaRush /Курси /Claude code /Карта поверхонь і робочого процесу курсу

Карта поверхонь і робочого процесу курсу

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, тести, збірка, 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. А як саме вони туди потрапили — руками чи силами агента — уже справа смаку.

Коментарі
ЩОБ ПОДИВИТИСЯ ВСІ КОМЕНТАРІ АБО ЗАЛИШИТИ КОМЕНТАР,
ПЕРЕЙДІТЬ В ПОВНУ ВЕРСІЮ