Курс по Claude Code

Архитектура приложений с Claude Code

Архитектура приложений с Claude Code

Claude Code хорошо понимает современные архитектурные паттерны. Правильная структура проекта помогает ему работать эффективнее.

Что Claude Code любит

Claude Code работает лучше всего с проектами, где:

  • Есть чёткое разделение слоёв (UI, бизнес-логика, данные)
  • Используются стандартные паттерны (MVC, Repository, Service Layer)
  • Файлы организованы по feature или layer, не по типу
  • TypeScript с явными типами

Структура Next.js проекта (пример)

my-app/
├── app/                    # App Router страницы
│   ├── api/               # API Routes
│   ├── (auth)/            # Route group
│   └── layout.tsx
├── components/            # React компоненты
│   ├── ui/               # Переиспользуемые UI-элементы
│   └── features/         # Фичевые компоненты
├── lib/                   # Утилиты, клиенты
│   ├── db.ts             # Подключение к БД
│   └── queries.ts        # SQL-запросы
├── hooks/                 # Custom hooks
├── types/                 # TypeScript типы
│   └── index.ts
├── scripts/               # Служебные скрипты
└── CLAUDE.md             # Контекст для Claude

Роль CLAUDE.md в архитектуре

CLAUDE.md — это место, где вы описываете архитектурные решения проекта. Claude Code читает его при каждом запуске:

## Архитектура

- БД: PostgreSQL через lib/db.ts (pg Pool, singleton)
- API: App Router API Routes в app/api/
- Типы: централизованы в types/index.ts
- Состояние: localStorage (авторизации нет)

## Правила

- Не использовать any в TypeScript
- SQL-запросы только параметризованные ($1, $2)
- Компоненты: 'use client' только где нужен стейт/эффекты

Паттерны, которые Claude Code знает

  • Repository pattern — отделяет логику работы с данными
  • Service layer — бизнес-логика отдельно от HTTP
  • Feature-based — код по фичам, а не по типам файлов
  • Server/Client split (Next.js) — правильное разделение серверных и клиентских компонентов

Рефакторинг с Claude Code

Если проект уже существует с хаотичной структурой:

Изучи текущую структуру проекта.
Предложи план рефакторинга для перехода на feature-based структуру.
Не меняй файлы, только план.

Итог

  • Стандартная структура проекта = лучший контекст для Claude Code
  • CLAUDE.md фиксирует архитектурные решения
  • Claude Code понимает паттерны: Repository, Service Layer, Feature-based
  • При рефакторинге — сначала план, потом действие

Практические задания

#1

Опиши архитектуру для Claude

Возьми существующий проект (или придумай: SaaS для управления задачами).

Напиши описание архитектуры, которое ты бы дал Claude Code в начале сессии. Оно должно помочь Claude сразу понять: где что лежит, какие соглашения используются, что нельзя трогать.

Подсказки

#2

Создай CLAUDE.md для своего проекта

Файл CLAUDE.md в корне проекта автоматически считывается Claude Code как системный контекст.

Создай такой файл для реального или учебного проекта. Включи: стек, структуру, соглашения, команды запуска/тестирования.

Подсказки