Habilidades solid-principles
🏗️

solid-principles

Seguro ⚙️ Comandos externos🌐 Acceso a red

Применение принципов SOLID к коду TypeScript

También disponible en: Benny9193

Принципы SOLID помогают создавать поддерживаемое программное обеспечение. Этот навык научит вас создавать тестируемые и расширяемые приложения на TypeScript, которые адаптируются к изменяющимся требованиям.

Soporta: Claude Codex Code(CC)
📊 69 Adecuado
1

Descargar el ZIP de la skill

2

Subir en Claude

Ve a Configuración → Capacidades → Skills → Subir skill

3

Activa y empieza a usar

Pruébalo

Usando "solid-principles". My OrderService class handles validation, business logic, database access, and notifications. How can I improve it?

Resultado esperado:

  • Обнаружено нарушение единственной ответственности: 4 различных обязанности
  • Извлеките логику валидации в отдельную функцию OrderValidator
  • Перенесите операции с базой данных в отдельный OrderRepository
  • Создайте интерфейс EmailNotifier для уведомлений
  • Внедрите все зависимости для тестируемости и гибкости

Usando "solid-principles". I have many if-else statements checking discount types. How do I make this extensible?

Resultado esperado:

  • Нарушение принципа открытости/закрытости: изменение существующего кода для добавления новых типов
  • Создайте тип DiscountStrategy для расчётов скидок
  • Храните стратегии в record/map для лёгкого расширения
  • Добавляйте новые типы скидок без изменения calculateDiscount
  • Используйте функциональную композицию для гибких комбинаций скидок

Usando "solid-principles". My Square class breaks Rectangle expectations when width changes. How do I fix this?

Resultado esperado:

  • Нарушение принципа подстановки Лисков: Square не может заменить Rectangle
  • Используйте композицию вместо наследования для отношений форм
  • Определите интерфейс Shape с расчётом площади
  • Создайте отдельные фабричные функции для Rectangle и Square
  • Избегайте наследования, когда контракты поведения различаются

Auditoría de seguridad

Seguro
v5 • 1/17/2026

This is a pure documentation/educational skill containing only markdown explanations and TypeScript code examples demonstrating SOLID design principles. The static scanner misidentified TypeScript template literals as shell backticks, arithmetic operations as cryptographic algorithms, and code comments as system reconnaissance. No executable code, network calls, file system access, or environment variable access exists. Verified by reading SKILL.md (282 lines) and examples.md (387 lines) which contain only educational content.

3
Archivos escaneados
852
Líneas analizadas
2
hallazgos
5
Auditorías totales

Puntuación de calidad

38
Arquitectura
100
Mantenibilidad
85
Contenido
21
Comunidad
100
Seguridad
91
Cumplimiento de la especificación

Lo que puedes crear

Изучение основ SOLID

Поймите каждый принцип через практические примеры TypeScript и типичные нарушения

Обзор проектных решений

Проверьте проектные решения и найдите возможности для рефакторинга в устаревшем коде

Изучение паттернов проектирования

Узнайте, как принципы SOLID направляют объектно-ориентированные и функциональные проектные решения

Prueba estos prompts

Выявить нарушения
Проанализируйте этот класс TypeScript и определите, какие принципы SOLID он нарушает. Объясните каждое нарушение и предложите подход к рефакторингу.
Применить единственную ответственность
Выполните рефакторинг этого класса в соответствии с принципом единственной ответственности. Извлеките отдельные функции для каждой ответственности.
Проектировать расширяемые системы
Перепроектируйте этот оператор switch для следования принципу открытости/закрытости с использованием паттерна стратегии или композиции.
Реализовать инверсию зависимостей
Выполните рефакторинг этого сервиса для зависимости от абстракций вместо конкретных реализаций. Покажите проект интерфейса.

Mejores prácticas

  • Начните с единственной ответственности - разделите функции по причине изменения
  • Используйте внедрение зависимостей для инверсии зависимостей и улучшения тестируемости
  • Предпочитайте композицию наследованию для гибкости

Evitar

  • God-классы, которые обрабатывают множественные не связанные обязанности
  • Глубокие иерархии наследования, нарушающие подстановку Лисков
  • Толстые интерфейсы, которые заставляют клиенты зависеть от неиспользуемых методов

Preguntas frecuentes

Какой принцип SOLID я должен изучить первым?
Начните с принципа единственной ответственности. Он создаёт основу для чистого кода и упрощает применение других принципов.
Могу ли я применять принципы SOLID к существующему коду?
Да. Найдите нарушения в критических классах и выполняйте рефакторинг постепенно. Сосредоточьтесь на областях с частыми изменениями в первую очередь.
SOLID применяется только к объектно-ориентированному коду?
Хотя SOLID разработан для ООП, концепции переносятся в функциональное программирование. Сосредоточьтесь на поддерживаемости и расширяемости.
Как избежать чрезмерного проектирования с SOLID?
Применяйте YAGNI. Используйте SOLID, когда вам нужна реальная гибкость, а не для гипотетических будущих требований.
Какова связь между SOLID и паттернами проектирования?
Принципы SOLID направляют проектные решения. Паттерны как Strategy, Factory и Repository помогают реализовать эти принципы.
Могу ли я использовать SOLID с TypeScript?
Безусловно. Интерфейсы и система типов TypeScript хорошо поддерживают принципы SOLID. Этот навык использует примеры TypeScript.

Detalles del desarrollador

Estructura de archivos