المهارات python-design-patterns
📦

python-design-patterns

آمن

Python デザインパターンを適用する

KISS、单一責任、継承よりコンポジションなどの実証済みデザインパターンを使用して、理解しやすくテストしやすく変更しやすいシステムを構築する保守性の高いPythonコードを作成します。

يدعم: Claude Codex Code(CC)
🥉 74 برونزي
1

تنزيل ZIP المهارة

2

رفع في Claude

اذهب إلى Settings → Capabilities → Skills → Upload skill

3

فعّل وابدأ الاستخدام

اختبرها

استخدام "python-design-patterns". ユーザー登録を行い、メールを送信し、アクティビティをログし、データベースに保存するクラスをリファクタリングする方法を示す

النتيجة المتوقعة:

UserService(ビジネスロジック)、UserRepository(データアクセス)、EmailNotifier(通知)、ActivityLogger(ログ)のそれぞれが单一責任を持つように分割されたリファクタリング例。

استخدام "python-design-patterns". 注文システムに決済処理を追加する必要があります。基底Orderクラスから継承すべきですか、それともコンポジションを使用すべきですか?

النتيجة المتوقعة:

コンポジションが推奨される理由の解説 - 決済プロバイダーを交換でき、フェイクでテストでき、継承階層を避けられる。PaymentProcessorがOrderServiceに注入される例を示す。

استخدام "python-design-patterns". データが微妙に異なる3つの類似した関数があります。抽象化を作成すべきですか?

النتيجة المتوقعة:

3回のルールを適用する - 明らかなパターンが見えてくるまで待つ。重複が間違った抽象化より優れた場合と、抽象化すべき場合の例を示す。

التدقيق الأمني

آمن
v1 • 2/15/2026

All 35 static findings are false positives. The skill is a documentation file containing Python code examples for educational purposes. Python dictionary syntax was misidentified as shell backticks, email examples as network calls, and code examples as cryptographic algorithms or reconnaissance. No actual security risks present.

1
الملفات التي تم فحصها
412
الأسطر التي تم تحليلها
0
النتائج
1
إجمالي عمليات التدقيق
لا توجد مشكلات أمنية
تم تدقيقه بواسطة: claude

درجة الجودة

38
الهندسة المعمارية
100
قابلية الصيانة
85
المحتوى
50
المجتمع
100
الأمان
91
الامتثال للمواصفات

ماذا يمكنك بناءه

新しいPythonサービスの設計

新しいサービスを開始する際に、これらのパターンを使用して最初からクリーンで保守可能なアーキテクチャを作成します。

絡み合ったコードのリファクタリング

複雑で結合されたコードに直面した場合、SRPと関心の分離を適用して依存関係を整理します。

抽象化決定の評価

抽象化を作成するかどうかを判断する場合、3回のルールを使用して過早な一般化避けます。

جرّب هذه الموجهات

問題にKISSを適用する
I need to solve [describe problem]. What is the simplest solution that works? Show me an example.
SRPを使用したリファクタリング
Here is my class [paste code] that does multiple things. How can I split it into classes with single responsibilities?
コンポジションvs継承
I have a base class with shared behavior and want to extend it. How can I use composition instead of inheritance? Show an example.
レイヤーアーキテクチャの適用
How should I organize [describe your application] into layers? Show me the separation of concerns with example code.

أفضل الممارسات

  • 具体的な要件によって正当化される場合のみ、シンプルなソリューションから始めて複雑さを追加する
  • 单一目的の20〜50行程度に関数を 집중する
  • I/O操作をビジネスロジックから異なるレイヤーに分離する
  • テスト可能性のためにコンストラクターを通じて依存関係を注入する

تجنب

  • ドメインを理解する前に過早に抽象化を作成する
  • コンポジションの代わりに継承をコード再利用に使用する
  • HTTP処理、検証、データベースアクセスを1つのクラスで混合する
  • 読みやすさではなく clever なコードを作成する

الأسئلة المتكررة

Pythonにおける3回のルールとは何ですか?
抽象化を作成する前に、3つの類似したインスタンスがあるまで待ちます。2つの類似したコードが実際にパターンを共有しているとは限りません - 3つ目の出現を待って確認してください。
継承よりコンポジションをいつ使用すべきですか?
真のポリモーフィズムを必要とする場合を除き、常にコンポジションを優先してください。継承は密接な結合を作成し、テストを困難にします。
関数はどのくらいのサイズにすべきですか?
複雑さに応じて20〜50行程度に関数を保ちます。複数の目的を果たすか、深くネストされたロジック(3レベル以上)がある場合に抽出してください。
関心の分離とは何ですか?
各レイヤーが明確な責任を持ち、その下のレイヤーにのみ依存する明確なレイヤー(API、Service、Repository)にコードを整理します。
依存性注入とは何ですか?
クラス内に作成するのではなく、コンストラクターを通じて依存関係を渡します。これにより、フェイク実装を許可することでコードをテスト可能にします。
KISS原則をいつ適用すべきですか?
常に動作する最もシンプルなソリューションから始めます。具体的な要件が複雑さを正当化する場合にのみ複雑さを追加します。シンプルなコードは保守が容易です。

تفاصيل المطور

بنية الملفات

📄 SKILL.md