المهارات flutter-dev
📦

flutter-dev

آمن

بناء تطبيقات Flutter متعددة المنصات

يتطلب بناء تطبيقات عالية الجودة متعددة المنصات إتقان العديد من أنماط Flutter وأساليب إدارة الحالة. يوفر هذا المهارة إرشادات منظمة حول أنماط الويدجت وإدارة الحالة عبر Riverpod و Bloc والتنقل باستخدام GoRouter وتحسين الأداء والتنفيذات الخاصة بكل منصة.

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

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

2

رفع في Claude

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

3

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

اختبرها

استخدام "flutter-dev". أرني كيفية إعداد GoRouter مع حراس المصادقة

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

  • إعداد GoRouter مع دالة إعادة توجيه تتحقق من حالة المصادقة
  • تعريف مسارات لتسجيل الدخول والشاشة الرئيسية والشاشات المحمية
  • تنفيذ إعادة توجيه ترسل غير المصادق عليهم إلى صفحة تسجيل الدخول
  • الحفاظ على حالة التنقل أثناء إعادة توجيه المصادقة

استخدام "flutter-dev". كيف أختبار ويدجت Flutter قائم على Bloc؟

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

  • كتابة اختبارات ويدجت باستخدام pumpWidget مع غلاف ProviderScope
  • استخدام Mocktail لمحاكاة تبعيات المستودع
  • تفعيل تفاعلات المستخدم باستخدام طريقي find و tap
  • التحقق من تغيرات الحالة المتوقعة في واجهة المستخدم باستخدام expect

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

آمن
v1 • 4/16/2026

This skill consists entirely of markdown documentation files (SKILL.md and 12 reference files) containing Dart/Flutter code examples and development best practices. The static analyzer flagged 583 patterns, but all are false positives caused by misinterpreting markdown code fence backticks as shell commands and treating documentation content as executable code. No actual scripts, network calls, filesystem operations, or external commands are present. The skill is safe to publish.

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

درجة الجودة

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

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

بنية بدء تشغيل تطبيق الهاتف

إعداد مشروع Flutter جديد ببنية قائمة على الميزات مع تنقل GoRouter وإدارة حالة Riverpod من البداية.

الترحيل لإدارة الحالة

ترحيل تطبيق Flutter موجود من setState إلى Riverpod أو Bloc للحصول على تنظيم أفضل للحالة وقابلية أعلى للاختبار.

مراجعة تحسين الأداء

تحديد وإصلاح اختناقات الأداء باستخدام تشكيل DevTools والتحسين الثابت وأنماط RepaintBoundary.

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

البدء بإعداد مشروع Flutter
ساعدني في إعداد مشروع Flutter جديد ببنية مجلدات قائمة على الميزات. قم بتضمين GoRouter للتنقل و Riverpod لإدارة الحالة. اعرض نقطة الدخول الرئيسية ومجلد ميزة أساسي.
تنفيذ إدارة الحالة عبر Riverpod
أرني كيفية تنفيذ مسار مصادقة المستخدم باستخدام Riverpod. قم بتضمين StateNotifierProvider لحالة المصادقة ونموذج تسجيل دخول مع التحقق والتنقل إلى الشاشة الرئيسية عند النجاح.
تحسين أداء ويدجت Flutter
راجع شجرة الويدجت هذه في Flutter وحدد مشاكل الأداء. اقترح أين يمكن استخدام البانيات الثابتة و RepaintBoundary و ListView.builder. اشرح تأثير كل تحسين.
بناء عميل REST API كامل باستخدام Dio
أنشئ إعداد عميل Dio HTTP مع معترضات المصادقة ومعالجة الأخطاء ومنطق إعادة المحاولة. قم بتضمين نمط المستودع لاستدعاءات API واعرض كيفية دمجه مع مزودي Riverpod.

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

  • استخدم البانيات الثابتة على جميع الويدجتات الثابتة لمنع إعادة البناء غير الضرورية وتقليل استخدام الذاكرة
  • اختر Riverpod لإدارة الحالة البسيطة وحقن التبعيات واختر Bloc لتدفقات الحالة المعقدة القائمة على الأحداث
  • قم بالتشخيص باستخدام Flutter DevTools في وضع البروفايل قبل التحسين لتحديد اختناقات الأداء الفعلية

تجنب

  • تجنب استخدام setState للحالة المشتركة التي تعتمد عليها عدة ويدجتات. استخدم حلاً لإدارة الحالة بدلاً من ذلك
  • لا تضع استدعاءات API أو العمليات الحسابية الثقيلة داخل طرق البناء. استخدم المزودات أو العوازل للأعمال غير المتزامنة
  • لا تتخطى البانيات الثابتة على الويدجتات الثابتة أبداً. عدم وجود const يمنع Flutter من تخطي الأشجار الفرعية غير المتغيرة للويدجتات

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

هل يجب أن أستخدم Riverpod أم Bloc لمشروعي في Flutter؟
يعمل Riverpod بشكل جيد لإدارة الحالة البسيطة وحقن التبعيات مع شفرات أقل. Bloc أفضل للتطبيقات المعقدة ذات تغيرات الحالة القائمة على الأحداث أو وظيفة التراجع أو عندما تحتاج إلى تسجيل انتقالات الحالة بشكل صريح. تستخدم العديد من المشاريع الاثنين معاً.
كيف أحسّن أداء تطبيق Flutter؟
ابدأ بالتشخيص باستخدام Flutter DevTools في وضع البروفايل. استخدم البانيات الثابتة على الويدجتات الثابتة وأضف RepaintBoundary حول الرسوم المتحركة المعقدة واستخدم ListView.builder للقوائم الطويلة وانقل العمليات الحسابية الثقيلة إلى العوازل باستخدام دالة compute.
ما هي بنية المشروع الموصى بها لتطبيقات Flutter؟
استخدم بنية قائمة على الميزات حيث يحتوي كل مجلد ميزة على طبقات العرض والمجال والبيانات. تذهب الأدوات المشتركة والسمات والتوجيه إلى مجلد مشترك. هذا يتوسع بشكل أفضل من البنية القائمة على الطبقات للتطبيقات الأكبر.
كيف أتعامل مع التنقل والربط العميق في Flutter؟
استخدم GoRouter للتوجيه التعريفي مع المسارات المكتوبة. قم بتكوين الربط العميق من خلال إعدادات التوجيه والإعدادات الخاصة بكل منصة. استخدم دوال إعادة التوجيه لحراس المصادقة والحفاظ على الحالة عبر تغيرات المسار.
كيف أختبر تطبيقات Flutter بفعالية؟
اكتب اختبارات ويدجت لمكونات واجهة المستخدم باستخدام flutter_test. اكتب اختبارات وحدة لمنطق الأعمال والمستودعات. اكتب اختبارات تكامل لتدفقات المستخدم الكاملة. استخدم Mocktail لمحاكاة التبعيات و bloc_test لاختبار انتقالات حالة Bloc.
كيف أتعامل مع أحجام الشاشات المختلفة في Flutter؟
استخدم LayoutBuilder مع نقاط التوقف للتصميمات المتجاوبة. اضبط نقاط التوقف عند 650 بكسل للأجهزة اللوحية و 1100 بكسل لأجهزة سطح المكتب. استخدم ويدجتات مرنة مثل Expanded و Flexible واختبر على أحجام شاشات متعددة أثناء التطوير.

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

المؤلف

MiniMax-AI

الترخيص

MIT

مرجع

main