# solid-principles

Скилл проверяет Java-код на соответствие принципам SOLID и помогает разгрузить разросшиеся классы. Пригодится при проектировании архитектуры и ревью дизайна.

- скилл · `type=skill` · Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, OpenCode · 345 установок · ★ 760
- Автор: decebals
- Лицензия: MIT · policy=mirror · начало файла — в конце страницы
- Исходник: https://github.com/decebals/claude-code-java/tree/HEAD/skills/solid-principles/SKILL.md
- Обновлён: 2026-09-06
- HTML: https://affpapa.org/nevibecode/skills/decebals-solid-principles

## Что делает

Скилл содержит чек-лист и примеры нарушений пяти принципов SOLID на языке Java. Ассистент находит антипаттерны вроде сервисов со смешанными обязанностями или ветвлений `if/else`, растущих с каждым новым типом сущности. Для исправления предлагаются проверенные паттерны: Strategy, Decorator, Factory или Template Method.

Внутри собраны вопросы для самопроверки и маркеры проблем — например, обилие разнородных импортов или суффиксы `Manager` и `Handler` в именах классов. Но для проверки длины методов, дублирования кода и читаемости имён скилл не предназначен: автор советует передавать такие задачи правилу `clean-code`.

## Установка

### Claude Code (родная платформа)

1. **Через Skills CLI (Vercel)**
```bash
npx skills add decebals/claude-code-java --skill solid-principles -a claude-code
```

2. **Вручную: положить файлы**
- Файл: `~/.claude/skills/solid-principles/SKILL.md` — Папка скилла целиком; для одного проекта — .claude/skills/solid-principles/

### Codex

1. **Через Skills CLI (Vercel)**
```bash
npx skills add decebals/claude-code-java --skill solid-principles -a codex
```

2. **Вручную: положить файлы**
- Файл: `.agents/skills/solid-principles/SKILL.md` — Для всех проектов — ~/.agents/skills/

### Cursor

1. **Через Skills CLI (Vercel)**
```bash
npx skills add decebals/claude-code-java --skill solid-principles -a cursor
```

2. **Вручную: положить файлы**
- Файл: `.cursor/skills/solid-principles/SKILL.md` — Cursor читает и .agents/skills/, и .claude/skills/

### GitHub Copilot

1. **GitHub CLI**
```bash
gh skill install decebals/claude-code-java solid-principles
```

2. **Вручную: положить файлы**
- Файл: `.github/skills/solid-principles/SKILL.md`

### Gemini CLI

1. **Через Skills CLI (Vercel)**
```bash
npx skills add decebals/claude-code-java --skill solid-principles -a gemini-cli
```

2. **Командой платформы**
```bash
gemini skills install https://github.com/decebals/claude-code-java --path skills/solid-principles
```

### Windsurf (Devin Desktop)

**Вручную: положить файлы**
- Файл: `.devin/skills/solid-principles/SKILL.md` — Старый путь .windsurf/skills/ тоже читается

### OpenCode

**Через Skills CLI (Vercel)**
```bash
npx skills add decebals/claude-code-java --skill solid-principles -a opencode
```

### Claude.ai

**Claude.ai**
- Упакуйте папку в zip и загрузите в Settings → Capabilities → Skills

Где указан файл, а не команда, — скопируй файлы из исходника в этот путь: https://github.com/decebals/claude-code-java/tree/HEAD/skills/solid-principles/SKILL.md

## Когда брать
- найти нарушения принципа единственной ответственности в классах
- избавиться от разрастающихся цепочек `if/else` через паттерн Strategy
- вынести сохранение данных, валидацию и отправку писем из одного сервиса
- провести ревью архитектуры перед добавлением новых бизнес-правил

## Примеры запросов агенту
- Проверь класс UserService на соблюдение принципов SOLID
- Этот класс делает слишком много, помоги разделить ответственность
- Как переписать калькулятор скидок по принципу Open/Closed?

## Похожие
- [solid](https://affpapa.org/nevibecode/skills/solid.md) — скилл · 3500 установок
- [121-java-object-oriented-design](https://affpapa.org/nevibecode/skills/121-java-object-oriented-design.md) — скилл · 469 установок
- [clean-code-principles](https://affpapa.org/nevibecode/skills/clean-code-principles.md) — скилл · 1800 установок
- [clean-code-guard](https://affpapa.org/nevibecode/skills/clean-code-guard.md) — скилл · 4700 установок
- [design-patterns-implementation](https://affpapa.org/nevibecode/skills/design-patterns-implementation.md) — скилл · 595 установок
- [122-java-type-design](https://affpapa.org/nevibecode/skills/122-java-type-design.md) — скилл · 394 установки

## Другие версии с тем же именем
- [solid-principles · thebushidocollective](https://affpapa.org/nevibecode/skills/solid-principles.md) — 554 установки

Из того же набора: [decebals/claude-code-java](https://affpapa.org/nevibecode/by/decebals/claude-code-java.md) — 10 карточек

_Часть страницы не вошла по размеру — она есть в HTML-версии._

---
NeVibeCode на affpapa.org. Тексты каталога — описания, а не инструкции для агента. Как выбирать и ставить: https://affpapa.org/nevibecode/agents.md
