Планування вашого інструмента

Розробка ПЗ з Claude Code

Dani Zysman

AI Curriculum Manager @ DataCamp

Від API до CLI

Два інструменти, ті самі дані: Web API vs CLI-звітувальник

Розробка ПЗ з Claude Code

Music Analytics Reporter

python reporter.py --artist "AC/DC" --format json --output report.json

recraft: напівкадр: Розробник біля дошки ескізує архітектуру CLI-інструмента з іконками бази даних і файлового виводу

Розробка ПЗ з Claude Code

Навіщо CLI?

recraft: CLI-інструмент, що під'єднується до автоматизації, конвеєрів, скриптів і тестування

  • Скриптується: автоматизуйте повторювані задачі
  • Комбінується: з'єднуйте з іншими інструментами
  • Готовий до конвеєрів: працює в CI/CD-системах
Розробка ПЗ з Claude Code

Планування: до vs після

Блок-схема: Init → Explore → Plan → Code

Розробка ПЗ з Claude Code

Сесія планування

> /plan
> think about designing reporter.py: artist statistics from Chinook 
(albums, tracks, duration, revenue), exported as JSON or CSV
План: CLI-інструмент reporter.py

Аргументи: --artist, --format (json/csv), --output
Дані: запит до Chinook для альбомів, треків, тривалості, прибутку
Валідація: перевірити наявність артиста перед запитом
Помилки: обробляти збої підключення до БД, відсутніх артистів
Вивід: запис у файл або stdout, якщо не задано --output
Коди виходу: 0 = успіх, 1 = помилка
Тести: test_reporter.py покриває основні функції та крайні випадки
Розробка ПЗ з Claude Code

Специфікація Claude

========================================
MUSIC ANALYTICS REPORTER - SPECIFICATION
========================================
Arguments:    --artist, --format, --output
Validation:   Check artist exists before query
Errors:       Handle DB connection, file permissions
Formats:      JSON (default), CSV
Exit codes:   0 = success, 1 = error

Режим планування + розширене мислення = чіткий план дій

Розробка ПЗ з Claude Code

Навички поєднуються

excalidraw: Розвиток навичок від розділу 1 до 4

Розробка ПЗ з Claude Code

Давайте потренуємось!

Розробка ПЗ з Claude Code

Preparing Video For Download...