نظرة عامة على البيئات

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

توفّر Firebase مستويات مختلفة من الدعم لسير عمل المطوّرين والبيئات المكوّنة. بعد التعرّف على مصطلحات وافتراضات سير عمل المطوّرين في هذه الصفحة، يمكنك الاطّلاع على أفضل الممارسات العامة وإرشادات الأمان العامة لإعداد مشروع Firebase وتطبيقاتك.

لمحة عن البيئات

في مجال تطوير البرامج، البيئة هي جميع الأجهزة والبرامج المطلوبة لتشغيل نسخة من تطبيق أو نظام تطبيقات.

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

تُعرف عملية نقل ميزة أو إصدار عبر هذه البيئات إلى مرحلة الإنتاج باسم مسار النشر.

مخطّط بياني يعرض البيئات التي تتألف منها عادةً مسارات النشر، بما في ذلك التطوير والاختبار وضمان الجودة والتقييم والإنتاج النهائي

أنواع البيئات

تتكوّن البيئة من البنية الأساسية التي تحتاج إليها لتشغيل تطبيقك ورمزه البرمجي وبياناته ودعمها. وسِّع كل مصطلح من المصطلحات التالية لمراجعة أوصاف بعض البيئات الشائعة، بما في ذلك نصائح حول أنواع البيانات المستخدمة في كل نوع من أنواع البيئات.

بيئات التطوير (dev)

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

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

بيئات الاختبار وتأكيد الجودة

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

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

يتم تزويد البيانات في بيئات الاختبار وتأكيد الجودة ببيانات جودة تمثل بشكل عام بيانات الإنتاج، إلى جانب البيانات التي تمثل الحالات الهامشية وأمثلة على البيانات التي تسببت في حدوث أخطاء في الماضي.

بيئات الإصدارات التجريبية

لإجراء اختبارات واقعية لكيفية عمل الإصدار في بيئة الإنتاج، تحتاج إلى بيئة مرحلية تحاكي البنية التحتية للإنتاج بأكبر قدر ممكن. ومن الشائع أن يكون لديك عدة نُسخ من بيئة الاختبار إذا كنت بحاجة إلى اختبار عمليات دمج معيّنة بشكل منفصل.

في ما يلي الاختلافات الشائعة بين بيئة الاختبار والبيئة الإنتاجية:

  • قد تفتقر البيئة التجريبية إلى بعض الميزات أو عمليات الدمج التي قد تؤدي إلى حدوث آثار جانبية. على سبيل المثال، قد يتم ضبط بيئة الإصدار التجريبي على عدم إرسال رسائل إلكترونية.

  • قد تحتوي بيئة الإعداد على بيانات مخفية الهوية، ويمكن أن تكون البيانات مزيفة، ولكن يجب أن تكون واقعية. بما أنّ البيئة المرحلية هي مكان لتصحيح الأخطاء بأمان، يمكنك منح الفريق إمكانية وصول أوسع إلى البيانات المرحلية مقارنةً ببيانات الإنتاج. لذا، لحماية خصوصية المستخدم، يجب عدم استخدام بيانات المستخدم الفعلية في مرحلة الإعداد.

بيئات الإنتاج (prod)

لكل تطبيق تحتفظ به، تحتاج إلى بيئة تشغيل فعلي واحدة. هذا هو المثيل الذي يتفاعل معه المستخدمون.

على عكس البيئات الأخرى التي يمكنك فيها تغيير البيانات و/أو حذفها و/أو إعادة إنشائها، فإن البيانات الموجودة في بيئة الإنتاج مهمة للغاية؛ سيؤثر فقدان بيانات الإنتاج أو تغييرها بشكل مباشر على المستخدمين.

في وحدة تحكّم Firebase، ننصحك بوضع علامة على مشروع Firebase المرتبط ببيئة التشغيل الفعلي على أنّه نوع بيئة "التشغيل الفعلي". يمكن أن تساعدك هذه العلامة في تذكيرك أنت وأعضاء فريقك بأنّ أي تغييرات قد تؤثر في تطبيقات الإنتاج المرتبطة وبياناتها.

الخطوات التالية