python-best-practices
Aplicar patrones de desarrollo orientado a tipos en Python
こちらからも入手できます: 0xBigBoss
Escribir Python sin definiciones de tipos conduce a errores en tiempo de ejecución y código difícil de mantener. Esta habilidad proporciona patrones probados en combate para el desarrollo con tipos utilizando dataclasses, uniones discriminadas, Protocols y otras características modernas de Python para hacer que los estados ilegales no sean representables.
スキルZIPをダウンロード
Claudeでアップロード
設定 → 機能 → スキル → スキルをアップロードへ移動
オンにして利用開始
テストする
「python-best-practices」を使用しています。 Create a frozen dataclass for a product with required name and price, optional description
期待される結果:
- Use @dataclass(frozen=True) for immutability
- Mark required fields without defaults first
- Add optional fields with default values after required fields
- The frozen=True flag prevents accidental mutation
- Example output shows proper field ordering and type hints
セキュリティ監査
安全Pure documentation skill containing only markdown guidance. No executable code, no file system access, no network calls, and no external command execution. This skill only provides informational content when loaded by an AI agent.
品質スコア
作れるもの
Diseñar modelos de datos con tipos seguros
Aprende a usar dataclasses, NewType y uniones discriminadas para codificar restricciones de dominio a nivel de tipos.
Revisar patrones de tipos en Python
Aplicar patrones de tipado consistentes en bases de código usando Protocols, TypedDict y uniones emparejadas exhaustivamente.
Generar Python idiomático
Producir código Python que siga patrones modernos de desarrollo con tipos al trabajar con Claude, Codex o Claude Code.
これらのプロンプトを試す
Crear un frozen dataclass con sugerencias de tipos apropiadas para un perfil de usuario incluyendo campos requeridos y avatar opcional. Usar los patrones de python-best-practices.
Modelar una máquina de estados de solicitud con estados idle, loading, success y failure usando uniones discriminadas y pattern matching. Aplicar patrones de python-best-practices.
Crear envoltorios NewType para UserId y OrderId para evitar confundirlos. Mostrar cómo validar la entrada y crear los tipos envueltos.
Definir un Protocol para un objeto similar a archivo con método read, luego mostrar cómo usarlo como sugerencia de tipo para funciones que aceptan cualquier objeto compatible con read.
ベストプラクティス
- Definir tipos antes de la implementación; dejar que el verificador de tipos guíe la completitud
- Usar frozen dataclasses y patrones inmutables para prevenir mutación accidental de estado
- Validar datos en los límites del sistema con verificaciones en tiempo de ejecución junto con sugerencias de tipos
回避
- Usar argumentos predeterminados mutables en firmas de funciones
- Omitir sugerencias de tipos para tipos de retorno 'obvios'
- Capturar excepciones sin volver a lanzarlas o añadir contexto