المهارات component-refactoring
📦

component-refactoring

آمن

Komplexe React-Komponenten refaktorieren

Komplexe React-Komponenten werden schwer zu testen und zu warten. Diese Skill bietet Muster und Workflows zur Refaktorierung von hochkomplexen Komponenten durch Extrahieren von Hooks, Aufteilen von Unterkomponenten und Anwenden Dify-spezifischer Konventionen.

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

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

2

رفع في Claude

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

3

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

اختبرها

استخدام "component-refactoring". Analyze complexity of web/app/components/workflow/index.tsx

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

Complexity Analysis:
- Total Complexity: 72 (target: <50)
- Max Function Complexity: 28
- Line Count: 420 (target: <300)

Top Complexity Drivers:
1. handleSubmit callback: +15 complexity (nested conditions)
2. useEffect for data sync: +12 complexity (nested callbacks)
3. render methods: +10 complexity (switch/case chains)

Recommended Actions:
1. Extract useWorkflowState hook
2. Split form handling into separate component
3. Move data sync logic to useEffect hook

استخدام "component-refactoring". Extract hooks from ConfigurationForm component

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

Extracted Hooks:
- useModelConfig: Manages model configuration state
- useDatasetSelection: Handles dataset picker logic
- useFormValidation: Form validation logic

File Structure:
web/app/components/form/
hooks/
use-model-config.ts
use-dataset-selection.ts
use-form-validation.ts
ConfigurationForm.tsx
index.ts

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

آمن
v1 • 2/16/2026

This is a documentation and guidance skill for React component refactoring. Static analyzer flagged 214 potential issues in markdown documentation files, all of which are false positives: backticks in code examples were detected as shell commands, code patterns triggered crypto/blocker alerts, and Object.keys() was flagged as certificate/key files. The skill provides reference documentation only and does not execute any code.

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

درجة الجودة

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

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

Komplexität der Komponente reduzieren

Wenn eine React-Komponente den Komplexitätsschwellenwert (>50) oder die Zeilenanzahl (>300) überschreitet, verwenden Sie diese Skill, um die Komplexität systematisch durch Hook-Extraktion und Komponentenaufteilung zu reduzieren.

Hook-Muster standardisieren

Wenden Sie Dify-Konventionen für die Organisation benutzerdefinierter Hooks in hooks/-Unterverzeichnissen oder neben Komponenten mit use- Präfix-Namensgebung an.

Komponenten für Tests vorbereiten

Refaktorieren Sie komplexe Komponenten vor dem Schreiben von Tests, um sicherzustellen, dass die Komponenten testbar sind und Komplexitätsschwellenwerte erfüllen.

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

Grundlegende Komplexitätsprüfung
Check the complexity of web/app/components/example.tsx using pnpm analyze-component. What is the complexity score and what are the main complexity drivers?
Hook-Extraktionsplan
Analyze web/app/components/form-config/index.tsx and identify opportunities to extract custom hooks. Show me the proposed hook structure with Dify conventions.
Komponenten-Aufteilungsstrategie
The Configuration component at web/app/components/config/index.tsx has complexity 85. Suggest how to split it into sub-components while maintaining Dify patterns.
Vollständiger Refaktorierungs-Workflow
Run pnpm analyze-component on web/app/components/app/configuration/index.tsx and generate a complete refactoring plan including hook extractions, sub-component splits, and complexity reduction targets.

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

  • Führen Sie die Komplexitätsanalyse vor der Refaktorierung durch, um Baseline-Metriken zu etablieren
  • Extrahieren Sie frühzeitig Hooks, wenn das State-Management 3-5 useState-Aufrufe überschreitet
  • Folgen Sie Dify-Namenskonventionen: Hooks im hooks/ Verzeichnis oder use-*.ts Präfix

تجنب

  • Refaktorierung von Komponenten, die bereits Komplexitätsschwellenwerte erfüllen, ohne Notwendigkeit
  • Extrahieren von Hooks, die nur in einer einzelnen Komponente verwendet werden (besser inline)
  • Erstellen zu vieler kleiner Komponenten, die die Code-Navigation erschweren

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

Welcher Komplexitätswert ist akzeptabel?
Die Zielkomplexität sollte unter 50 liegen. Werte von 51-75 zeigen, dass eine Refaktorierung vor dem Testen erforderlich ist. Werte über 75 erfordern sofortige Refaktorierung.
Kann ich diese Skill für Nicht-Dify React-Projekte verwenden?
Ja, die Komplexitätsanalysemuster und Hook-Extraktionstechniken gelten allgemein für React. Die Dateiorganisationskonventionen sind jedoch spezifisch für Dify.
Modifiziert diese Skill meinen Code automatisch?
Nein, diese Skill bietet Analyse und Anleitung. Sie führen die vorgeschlagenen Refaktorierungsbefehle selbst mit pnpm refactor-component in Ihrer lokalen Umgebung aus.
Welche Tools verwendet diese Skill?
Die Skill bezieht sich auf Difys pnpm analyze-component und pnpm refactor-component CLI-Tools. Diese müssen im web/ Verzeichnis eines Dify-Projekts ausgeführt werden.
Wie weiß ich, wann ich refaktorieren statt neu schreiben soll?
Wenn die Komplexität 75 überschreitet oder die Komponenten fundamentale architektonische Probleme haben, sollten Sie ein Rewrite in Betracht ziehen. Refaktorierung funktioniert am besten, wenn die Komponente wertvolle Geschäftslogik enthält, die es值得 zu bewahren.
Was ist kognitive Komplexität?
Kognitive Komplexität misst, wie schwer Code zu verstehen ist. Sie unterscheidet sich von der zyklomatischen Komplexität dadurch, dass sie sich auf menschliche Lesbarkeit konzentriert, nicht nur auf Ausführungspfade. SonarJS berechnet sie basierend auf verschachtelten Strukturen, Switches und Kontrollflussmustern.

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

المؤلف

langgenius

الترخيص

MIT

مرجع

main

بنية الملفات