المهارات avalonia-zafiro-development
📦

avalonia-zafiro-development

آمن

تطبيق اتفاقيات تطوير Avalonia Zafiro

تفرض هذه المهارة الاتفاقيات الإلزامية لتطوير واجهة المستخدم Avalonia مع مجموعة أدوات Zafiro، مما يضمن كود MVVM وظيفي تفاعلي قابل للصيانة يتبع أفضل ممارسات الصناعة.

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

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

2

رفع في Claude

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

3

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

اختبرها

استخدام "avalonia-zafiro-development". اكتب ViewModel لقائمة عناصر يمكن تصفيتها وتحديثها.

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

ViewModel يستخدم RefreshableCollection مع عوامل Connect/Filter/Transform لـ DynamicData، وإدارة دورة الحياة الصحيحة لـ DisposeWith، وقواعد تحقق Zafiro.

استخدام "avalonia-zafiro-development". حوّل معالجة الأخطاء هذه لاستخدام أنواع Result.

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

كود معاد هيكلته لاستخدام نوع Result من CSharpFunctionalExtensions مع خطوط أنابيب معالجة Success/Failure المناسبة بدلاً من الاستثناءات للتحكم في التدفق.

استخدام "avalonia-zafiro-development". أظهر اختصار Zafiro لـ Replay(1).RefCount().

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

استخدم طريقة الامتداد ReplayLastActive() من Zafiro.Reactive.ObservableMixin.

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

آمن
v1 • 2/24/2026

All static findings are false positives. This skill contains only markdown documentation for Avalonia UI development conventions. The flagged patterns (backtick execution, weak crypto, system reconnaissance) are triggered by markdown syntax and development terminology in documentation context, not actual executable code. No scripts, network calls, file system access, or environment variable usage present.

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

الأنماط المكتشفة

External Commands Detection (False Positive)Weak Cryptographic Algorithm Detection (False Positive)System Reconnaissance Detection (False Positive)
تم تدقيقه بواسطة: claude

درجة الجودة

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

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

إعداد مشروع Avalonia جديد

تطبيق اتفاقيات Zafiro عند بدء مشروع واجهة مستخدم Avalonia جديد لإنشاء البنية المناسبة من البداية.

مراجعة الكود وإعادة الهيكلة

استخدم المهارة لمراجعة الكود الحالي مقابل أنماط Zafiro وتحديد المجالات التي تحتاج إلى إعادة هيكلة.

تعلم الأنماط التفاعلية

الرجوع إلى الاختصارات والأنماط عند تطبيق خطوط أنابيب DynamicData أو الأوامر التفاعلية.

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

تطبيق اتفاقيات Zafiro
طبق اتفاقيات تطوير Avalonia Zafiro لمراجعة وتحسين هذا الكود. ركز على نقاء MVVM، واستخدام DynamicData، وطرق المساعدة Zafiro.
إصلاح الأنماط المضادة التفاعلية
حدد وأصلح الأنماط المضادة التفاعلية في هذا الكود باستخدام أفضل ممارسات Zafiro. ابحث عن إنشاء SourceList المرتجل، والمنطق في Subscribe، والاستخدام غير السليم للعوامل.
تنفيذ التحقق
نفذ التحقق باستخدام Zafiro ValidationRule والامتدادات. أظهر النمط الصحيح للتحقق من المجموعات الديناميكية.
تحسين التعامل مع المجموعات
طبق نمط RefreshableCollection وعوامل DynamicData لتحسين التعامل مع المجموعات في هذا الكود.

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

  • فضل عوامل DynamicData على عوامل Rx العادية عند العمل مع المجموعات
  • استخدم أنواع Result من CSharpFunctionalExtensions لمعالجة الأخطاء بدلاً من الاستثناءات
  • حافظ على استقلالية ViewModels عن Avalonia للتوافق متعدد المنصات

تجنب

  • إنشاء SourceList أو SourceCache على الطاير للمشاكل المحلية بدلاً من استخدام المساعدين الموجودين
  • وضع منطق الأعمال داخل كتل Subscribe بدلاً من خط الأنابيب التفاعلي
  • استخدام عوامل System.Reactive العادية عندما توجد بدائل DynamicData

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

ما هو Zafiro في تطوير Avalonia؟
Zafiro هي مجموعة أدوات توفر تجريدات ومساعدين وطرق امتداد لتطوير واجهة مستخدم Avalonia، مع التركيز على الأنماط التفاعلية والبنية النظيفة.
لماذا استخدام DynamicData بدلاً من Rx العادي؟
يوفر DynamicData عوامل متخصصة لإدارة المجموعات (Connect، Filter، Transform، Sort) تكون أكثر كفاءة وملاءمة لسيناريوهات ربط واجهة المستخدم.
ماذا يعني MVVM النقي في هذا السياق؟
يجب ألا تشير ViewModels إلى أنواع Avalonia مباشرة، مما يضمن بقاءها قابلة للاختبار ومستقلة عن المنصة.
متى يجب استخدام أنواع Result؟
استخدم أنواع Result لمسارات الأخطاء المتوقعة والتحكم في التدفق. احتفظ بالاستثناءات للمواقف الاستثنائية الحقيقية التي لا يمكن التعافي منها.
ما هو RefreshableCollection؟
نمط Zafiro يدير القوائم القابلة للتحديث مع تحميل تلقائي، وتحديثات فعالة عبر EditDiff، ومخرج ReadOnlyObservableCollection لربط واجهة المستخدم.
كيف أتعامل مع الأخطاء في خطوط الأنابيب التفاعلية؟
استخدم امتداد HandleErrorsWith من Zafiro لتوجيه الأخطاء مباشرة إلى خدمة إشعارات واجهة المستخدم بدلاً من معالجة Subscribe اليدوية.

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