software-architecture
Construir Arquitectura de Software Escalable
También disponible en: Doyajin174,Chemiseblanc
Deja de reinventar la rueda con utilidades y ayudantes personalizados. Esta habilidad te enseña principios de Arquitectura Limpia y Diseño Guiado por el Dominio para ayudarte a escribir código mantenible y escalable.
Descargar el ZIP de la skill
Subir en Claude
Ve a Configuración → Capacidades → Skills → Subir skill
Activa y empieza a usar
Pruébalo
Usando "software-architecture". Revisa esta clase UserService para problemas arquitectónicos: [ UserService con consultas de base de datos, llamadas a API y renderizado de UI todo mezclado ]
Resultado esperado:
Problemas Arquitectónicos Encontrados: 1) Responsabilidades mezcladas - las consultas de base de datos pertenecen a la capa Repository, 2) El renderizado de UI debe estar en un componente de vista separado, 3) Las llamadas a API deben estar en un servicio dedicado. Refactorización Recomendada: Dividir en UserRepository (datos), UserService (lógica de negocio) y UserView (presentación).
Usando "software-architecture". Necesito implementar procesamiento de pagos. ¿Debería construir el mío propio o usar una biblioteca?
Resultado esperado:
Recomendación: Usa Stripe o Paddle en lugar de construir procesamiento de pagos personalizado. Estos servicios manejan cumplimiento PCI, facturación recurrente, webhooks y casos extremos que te tomarían meses construir. Solo considera implementación personalizada si tienes requisitos altamente únicos que las soluciones existentes no pueden satisfacer.
Usando "software-architecture". Diseña un módulo para procesamiento de pedidos en una aplicación de comercio electrónico
Resultado esperado:
Arquitectura Recomendada (DDD): 1) Entidad Order (dominio): Order, OrderItem, OrderStatus. 2) Repositorios: OrderRepository, InventoryRepository. 3) Servicios: OrderService (placeOrder, cancelOrder), PaymentService (processPayment), InventoryService (reserveItems). 4) Anti-patterns a evitar: OrderController haciendo lógica de negocio, consultas de base de datos en controladores, clase genérica OrderUtils.
Auditoría de seguridad
SeguroAll static analysis findings are false positives. Detected 'backtick execution' patterns are markdown code emphasis formatting for library names and file examples. 'Weak cryptographic algorithm' detections are references to 'Clean Architecture' design pattern, not cryptography. 'System reconnaissance' patterns match legitimate software development guidance. This skill contains no executable code and provides educational architecture guidance only.
Puntuación de calidad
Lo que puedes crear
Arquitectura de Proyecto Nuevo
Iniciar un nuevo proyecto y necesitar establecer una base arquitectónica sólida desde el primer día
Refactorización de Código Legado
Mejorar la calidad del código en una base de código existente aplicando principios de arquitectura limpia
Estándares de Revisión de Código
Establecer directrices arquitectónicas consistentes para revisiones de código del equipo y pull requests
Prueba estos prompts
Revisa este componente de código para problemas arquitectónicos. Verifica: nomenclatura genérica (utils/helpers), lógica de negocio mezclada con UI, longitud de archivos mayor a 200 líneas, y funciones mayores a 50 líneas. Sugiere mejoras siguiendo principios de Arquitectura Limpia.
Necesito construir un módulo de [feature]. Diseña la arquitectura siguiendo principios DDD. Sugiere nombres específicos del dominio para entidades, servicios y repositorios. Define límites claros y separación de responsabilidades.
Necesito implementar funcionalidad de [feature]. Busca bibliotecas o servicios existentes que resuelvan este problema. Evalúa opciones basándote en: estado de mantenimiento, adopción de la comunidad, calidad de documentación y adaptación a mis requisitos.
Analiza esta base de código para anti-patterns arquitectónicos: síndrome NIH (implementaciones personalizadas en lugar de bibliotecas), nombres de archivos genéricos, pobre separación de responsabilidades y anidamiento profundo. Proporciona recomendaciones de refactorización específicas con ejemplos.
Mejores prácticas
- Busca bibliotecas y servicios existentes antes de escribir código personalizado para reducir la carga de mantenimiento
- Usa nombres específicos del dominio como OrderCalculator y UserAuthenticator en lugar de utils o helpers genéricos
- Mantén la lógica de negocio independiente de los marcos y separada de los componentes de UI
- Aplica el patrón de retorno anticipado para reducir el anidamiento y mejorar la legibilidad del código
Evitar
- Crear archivos utils.js o helpers.ts con funciones no relacionadas en lugar de módulos específicos del dominio
- Mezclar lógica de negocio con componentes de UI o poner consultas de base de datos directamente en controladores
- Construir autenticación personalizada, gestión de estado o validación de formularios cuando existen bibliotecas establecidas
- Nombrar archivos o módulos genéricamente (common, shared, misc) sin propósito claro del dominio
Preguntas frecuentes
¿Qué es Arquitectura Limpia?
¿Por qué evitar archivos utils y helpers?
¿Cuándo debería escribir código personalizado en lugar de usar una biblioteca?
¿Qué límites de tamaño de archivo se recomiendan?
¿Cómo se diferencia esta habilidad de los asistentes de codificación generales?
¿Puedo usar esta habilidad para cualquier lenguaje de programación?
Detalles del desarrollador
Autor
sickn33Licencia
MIT
Repositorio
https://github.com/sickn33/antigravity-awesome-skills/tree/main/skills/software-architectureRef.
main
Estructura de archivos
📄 SKILL.md