======================================================================
📘 TITLE: 🏗️ ГАЙД: ЧИСТАЯ АРХИТЕКТУРА И МИКРОСЕРВИСЫ В CLAUDE 🏗️ | АВТОВЫДАЧА
📂 CATEGORY: Claude
📄 FILENAME: gayd_chistaya_arhitektura_i_mikroservisy_v_claude_avtovydacha_guide.txt
======================================================================
🏗️ ГАЙД: ПРОЕКТИРОВАНИЕ ЧИСТОЙ АРХИТЕКТУРЫ (HEXAGONAL / CLEAN ARCHITECTURE) В CLAUDE 🏗️
🔹 ВВЕДЕНИЕ:
Разработка масштабируемых enterprise-систем требует разделения бизнес-логики и инфраструктуры (Domain-Driven Design, Hexagonal / Onion Architecture). Claude 3.5 Sonnet позволяет за один запрос спроектировать полный скелет сервиса с соблюдением Dependency Inversion, Use Cases, Repositories и DTO.
🔹 ШАГ 1: ПРОМПТ ГЕНЕРАЦИИ АРХИТЕКТУРЫ ПО DDD
```xml
Спроектируй сервис биллинга и подписок на Python (Clean Architecture).
1. Domain Layer: сущности (Entities), Value Objects, Domain Events без внешних зависимостей.
2. Application Layer (Use Cases): сценарии CreateSubscription, CancelSubscription, интерфейсы репозиториев (Ports).
3. Infrastructure Layer (Adapters): реализация репозиториев на SQLAlchemy 2.0 Async, интеграция со Stripe API.
4. Presentation Layer: FastAPI роутеры с Pydantic V2 схемами.
5. Предоставь готовую файловую структуру и рабочий код ключевых слоев.
```
🔹 ШАГ 2: ПРИМЕР СГЕНЕРИРОВАННОГО DOMAIN ПОРТА И USE CASE
Claude генерирует слабосвязанный модульный код:
```python
# domain/interfaces/subscription_repository.py
from abc import ABC, abstractmethod
from domain.entities.subscription import Subscription
class ISubscriptionRepository(ABC):
@abstractmethod
async def get_by_user_id(self, user_id: str) -> Subscription | None:
pass
@abstractmethod
async def save(self, subscription: Subscription) -> None:
pass
```
💡 Если у вас возникнут любые вопросы по выполнению шагов из этого гайда — напишите в чат заказа, я с радостью подскажу!