Apidog

منصة تطوير API تعاونية متكاملة

تصميم API

توثيق API

تصحيح أخطاء API

محاكاة API

اختبار API الآلي

إدارة إصدار فلاتر (FVM): مُشرح

@apidog

@apidog

Updated on أبريل 5, 2025

إدارة إصدار فلاتر (FVM) هي أداة أساسية لمطوري فلاتر التي تبسط عملية إدارة عدة إصدارات من FSDK فلاتر عبر مشاريع مختلفة. مع تطور فلاتر بسرعة مع التحديثات المتكررة، تصبح الحاجة إلى نظام إدارة إصدارات قوي أمرًا حيويًا للحفاظ على استقرار المشروع. ستوجهك هذه الدليل الشامل خلال كل ما تحتاج لمعرفته حول FVM، من التثبيت إلى سيناريوهات الاستخدام المتقدمة.

أثناء تطوير تطبيقات فلاتر، ستحتاج غالبًا إلى اختبار والتفاعل مع واجهات برمجة التطبيقات (APIs). يعد Apidog بديلاً ممتازًا لـ Postman، حيث يقدم مجموعة شاملة من الميزات لتطوير واختبار واجهات برمجة التطبيقات.

لماذا يجب أن تفكر في Apidog؟

يوفر Apidog تجربة مبسطة مع ميزات تجعل اختبار واجهات برمجة التطبيقات أكثر كفاءة:

  1. منصة شاملة: توثيق API، التصميم، تصحيح الأخطاء، الاختبار التلقائي، والمحاكاة في أداة واحدة
  2. واجهة سهلة الاستخدام: تصميم amigable مع قدرات قوية
  3. خادم محاكاة مدمج: إنشاء واجهات برمجة التطبيقات دون كتابة أي كود

4. ميزات التعاون: التعاون الفوري بين الفرق مع تحديثات متزامنة

5. دعم OpenAPI: استيراد وتصدير مواصفات OpenAPI بسلاسة

6. توثيق تلقائي: إنشاء مستندات API جميلة وتفاعلية تلقائيًا

7. قدرة اختبار متقدمة: إنشاء سيناريوهات اختبار معقدة باستخدام برمجة قوية

زر

لماذا تحتاج إلى إدارة إصدار فلاتر

قبل التعمق في التفاصيل الفنية، دعنا نفهم لماذا تعتبر FVM مهمة لمطوري فلاتر:

  1. إصدارات فلاتر محددة للمشاريع: قد تتطلب المشاريع المختلفة إصدارات مختلفة من FSDK فلاتر بناءً على توافق الحزمة أو متطلبات العميل.
  2. استقرار الفريق: يضمن استخدام جميع أعضاء الفريق نفس إصدار فلاتر، مما يقضي على مشاكل "يعمل على جهازي".
  3. تبديل SDK بسهولة: يمكنك التبديل بسرعة بين القنوات المستقرة، البيتا، أو التطوير دون إعادة تثبيت تستغرق وقتًا طويلاً.
  4. دعم مشاريع متعددة: العمل على مشاريع متنوعة في نفس الوقت دون تعارض الإصدارات.
  5. اختبار الإصدارات الجديدة: يمكنك تجربة إصدارات جديدة من فلاتر بأمان دون التأثير على مشاريع الإنتاج المستقرة لديك.

التثبيت

لنبدأ بتثبيت FVM على نظامك. تختلف عملية التثبيت قليلاً حسب نظام التشغيل الذي تستخدمه:

لنظام macOS:

باستخدام Homebrew:

brew tap leoafarias/fvm
brew install fvm

باستخدام سكربت التثبيت:

curl -fsSL https://fvm.app/install.sh | bash

لنظام Windows:

باستخدام Chocolatey:

choco install fvm

أو قم بتنزيل الحزمة المستقلة من مستودع FVM على GitHub.

لنظام Linux:

باستخدام سكربت التثبيت:

curl -fsSL https://fvm.app/install.sh | bash

التفعيل العالمي

بعد تثبيت FVM، قم بتفعيله عالميًا:

dart pub global activate fvm

الأوامر الأساسية لـ FVM والاستخدام

الآن بعد أن قمت بتثبيت FVM، دعنا نستكشف الأوامر الأساسية لإدارة إصدارات FSDK فلاتر.

تثبيت إصدارات فلاتر

لتثبيت إصدار محدد من فلاتر:

fvm install 3.16.0

يمكنك أيضًا تثبيت قناة معينة:

fvm install stable
fvm install beta
fvm install dev

للمستخدمين المتقدمين، يمكنك حتى تثبيتCommit معين باستخدام هاش git:

fvm install fa345b1  # هاش قصير
fvm install 476ad8a917e64e345f05e4147e573e2a42b379f9  # هاش طويل

تعيين إصدار فلاتر لمشروعك

لتعيين إصدار محدد من فلاتر لمشروعك، انتقل إلى دليل مشروعك وتشغيل:

fvm use 3.16.0

تقوم هذه الأوامر بإنشاء مجلد .fvm في مشروعك وتقوم بإعداد رابط رمزي إلى FSDK فلاتر المحدد.

لاستخدام أحدث إصدار من قناة معينة:

fvm use stable

إذا كنت ترغب في تثبيت القناة على الإصدار الحالي (لمنع التحديثات التلقائية):

fvm use stable --pin

قائمة الإصدارات المثبتة

لرؤية جميع إصدارات فلاتر التي قمت بتثبيتها عبر FVM:

fvm list

بدلاً من ذلك، يمكنك استخدام الاختصار:

fvm ls

عرض إصدارات فلاتر المتاحة

لعرض جميع إصدارات FSDK فلاتر المتاحة:

fvm releases

لتصفية الإصدارات حسب القناة:

fvm releases --channel beta

إزالة إصدار فلاتر

عندما لم تعد بحاجة إلى إصدار محدد من فلاتر:

fvm remove 3.16.0

تعيين إصدار فلاتر عالمي

لتعيين إصدار فلاتر عالمي للاستخدام عبر النظام لديك:

fvm global 3.16.0

لإلغاء ارتباط الإصدار العالمي:

fvm global --unlink

تكوين المشروع

بعد إعداد FVM لمشروعك، ستحتاج إلى تكوين بيئة التطوير الخاصة بك لاستخدام FSDK فلاتر الذي تديره FVM.

تحديث .gitignore

ينشئ FVM رابطًا رمزيًا في .fvm/flutter_sdk يشير إلى ذاكرة التخزين المؤقت لإصدار فلاتر الذي اخترته. أضف هذا إلى .gitignore الخاص بك:

.fvm/flutter_sdk

تكوينات IDE

VS Code

قم بإنشاء أو تحديث .vscode/settings.json في مشروعك مع ما يلي:

{
  "dart.flutterSdkPath": ".fvm/flutter_sdk",
  // إزالة ملفات .fvm من البحث
  "search.exclude": {
    "**/.fvm": true
  },
  // إزالة من مراقبة الملفات
  "files.watcherExclude": {
    "**/.fvm": true
  }
}

Android Studio

  1. اذهب إلى اللغات والإطارات > فلاتر
  2. قم بتغيير مسار FSDK فلاتر إلى المسار المطلق لرابطك الرمزي في FVM (مثل /absolute-project-path/.fvm/flutter_sdk)
  3. قم بتطبيق التغييرات وأعد تشغيل Android Studio

لتجاهل الدليل الجذري لـ FSDK فلاتر داخل Android Studio، أضف هذا إلى .idea/workspace.xml:

<component name="VcsManagerConfiguration">
  <ignored-roots>
    <path value="$PROJECT_DIR$/.fvm/flutter_sdk" />
  </ignored-roots>
</component>

XCode

إذا كنت تعمل على iOS، افتح Xcode، اذهب إلى مراحل البناء، وأضف هذا في تشغيل السكربت:

export FLUTTER_ROOT="$PROJECT_DIR/../.fvm/flutter_sdk"

ميزات FVM المتقدمة

نكهات المشروع

يدعم FVM نكهات المشروع، مما يسمح لأجزاء مختلفة من تطبيقك باستخدام إصدارات مختلفة من FSDK فلاتر:

fvm use 3.16.0 --flavor production
fvm use 3.10.0 --flavor development

لتبديل بين النكهات:

fvm use production
fvm use development

لتشغيل أمر فلاتر مع نكهة معينة:

fvm flavor production flutter build

تنفيذ أوامر فلاتر بإصدارات محددة

يسمح لك أمر spawn بتشغيل أوامر فلاتر مع إصدار محدد من SDK:

fvm spawn 3.16.0 flutter build
fvm spawn 3.10.0 flutter test

تشغيل أوامر مع إصدار فلاتر للمشروع

ينفذ الأمر exec الأوامر أو السكربتات باستخدام إصدار فلاتر المكون في المشروع:

fvm exec melos bootstrap
fvm exec path/to/script.sh

العمل مع FVM في بيئات CI/CD

للتكامل المستمر، أضف هذه الخطوات إلى سير العمل الخاص بك:

  1. تثبيت FVM
  2. تشغيل fvm install
  3. استخدم fvm flutter <command> لتشغيل أوامر فلاتر

مثال لتطبيق GitHub Actions:

steps:
  - uses: actions/checkout@v3
  - name: تثبيت FVM
    run: |
      dart pub global activate fvm
      fvm install
  - name: البناء والاختبار
    run: |
      fvm flutter pub get
      fvm flutter test

أفضل الممارسات لاستخدام FVM

  1. استخدم دائمًا FVM لأوامر فلاتر - شغل أوامر فلاتر عبر FVM (مثل fvm flutter pub get) لضمان التناسق.
  2. إدراج إصدار FVM في توثيق المشروع - وثق الإصدار المطلوب من فلاتر في README الخاص بك لمساعدة أعضاء الفريق الجدد.
  3. تثبيت إصدار فلاتر في CI/CD - تأكد من أن خط أنابيب التكامل المستمر يستخدم نفس إصدار فلاتر مثل بيئة التطوير لديك.
  4. فكر في استخدام --pin من أجل الاستقرار - عند استخدام قناة مثل "مستقرة"، فكر في تثبيتها لتجنب التحديثات التلقائية.
  5. تنظيف ذاكرة التخزين المؤقت بانتظام - قم بإزالة إصدارات فلاتر غير المستخدمة بشكل دوري باستخدام fvm remove لتوفير مساحة على القرص.

استكشاف المشكلات الشائعة

الإصدار FVM غير معترف به

إذا لم يتعرف IDE الخاص بك على إصدار فلاتر الذي تم تعيينه بواسطة FVM:

  1. تأكد من أن مسار SDK فلاتر تم تعيينه بشكل صحيح في إعدادات IDE الخاصة بك
  2. أعد تشغيل IDE بعد تغييرات التكوين
  3. تحقق من أن الرابط الرمزي تم إنشاؤه بشكل صحيح باستخدام ls -la .fvm/flutter_sdk

مشكلات الأذونات

إذا واجهت أخطاء في الأذونات:

  1. على الأنظمة القائمة على Unix، حاول استخدام sudo fvm <command>
  2. تحقق من أذونات المجلد لمجلد ذاكرة التخزين المؤقت لـ FVM

مشكلات المسار

إذا لم يتم العثور على أوامر فلاتر بعد استخدام FVM:

  1. تأكد من أن مسار SDK فلاتر موجود في PATH الخاص بنظامك
  2. استخدم المسارات المطلقة إلى SDK فلاتر في سكربتاتك

الخاتمة

إدارة إصدار فلاتر (FVM) هي أداة لا غنى عنها لتطوير فلاتر الحديثة. من خلال السماح بالتحكم الدقيق في إصدار FSDK فلاتر عبر مشاريع مختلفة، فإنها تقضي على مشكلات التوافق وتضمن التناسق عبر فرق التطوير.

بدءًا من الأساسيات الخاصة بالتثبيت والتقدم نحو ميزات متقدمة مثل نكهات المشروع، قد غطت هذه الدليل الجوانب الأساسية لاستخدام FVM بفعالية. من خلال دمج FVM في سير عمل تطوير فلاتر الخاص بك، يمكنك تعزيز الإنتاجية والحفاظ على استقرار المشروع والتعاون بسلاسة مع أعضاء الفريق.

تذكر دائمًا تشغيل أوامر فلاتر عبر FVM لضمان تناسق الإصدارات وتجنب السلوكيات غير المتوقعة. مع استخدام FVM بشكل صحيح، يمكنك العمل بثقة على عدة مشاريع فلاتر بمتطلبات SDK مختلفة وتجربة إصدارات فلاتر جديدة بسهولة دون التأثير على كود الإنتاج الخاص بك.

نتمنى لك برمجة فلاتر ممتعة مع FVM!