كيفية اختيار استهداف "الأداء الأساسي"

تاريخ النشر: 20 مايو 2025

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

ما هو الهدف الأساسي؟

الاستهداف حسب Baseline هو تجميع لميزات الويب التي يمكن للمطوّرين اختيار توفيرها، استنادًا إلى حالة Baseline. هناك نوعان من استهدافات خط الأساس: استهدافات متحرّكة واستهدافات ثابتة.

تتضمّن الأهداف المتغيّرة، مثل "متوافق مع أجهزة كثيرة" أو "متوافق مع أجهزة حديثة"، مجموعة من الميزات التي قد تتغيّر بمرور الوقت. تكون الأهداف المتغيّرة منطقية في الحالات التي تريد فيها أن تتطوّر مجموعة الميزات المتوافقة تلقائيًا عند إصدار إصدارات جديدة من المتصفّح.

الأهداف الثابتة هي تلك التي لا تتغير مجموعة الميزات فيها بمرور الوقت. بشكل عام، تستند الأهداف الثابتة إلى السنوات التقويمية. على سبيل المثال، Baseline 2023 هو هدف ثابت يتضمّن مجموعة من ميزات الويب التي أصبحت متاحة حديثًا في Baseline في عام 2023. لن تتضمّن Baseline 2023 الميزات التي أصبحت Baseline بعد عام 2023، ما يعني أنّ مجموعة ميزات Baseline 2023 لا تتغيّر أبدًا.

تكون الاستهدافات الثابتة منطقية في الحالات التي تكون فيها إمكانية التوقّع والتحديد أمرًا بالغ الأهمية، ولكن يمكن أن تصبح قديمة بمرور الوقت، لذا عند استخدام الاستهدافات الثابتة، من المستحسن إعادة تقييم استهدافك بانتظام.

لماذا يجب اختيار هدف؟

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

استخدام البيانات لاختيار هدف "الأداء الأساسي"

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

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

لاستخدامها، عليك إنشاء استكشاف جديد في "إحصاءات Google"، وإضافة بعض المقاييس والسمات إلى تقريرك، وتصدير التقرير كملف TSV. يمكنك الاطّلاع على تفاصيل هذه العملية في هذه التعليمات. عند استيراد ملف TSV إلى أداة التحقّق، من المفترض أن تتلقّى ناتجًا يشبه ما يلي:

أداة "التحقّق من التوافق مع خط الأساس" في "إحصاءات Google" تعرض تفصيلاً لمدى التوافق مع مختلف استهدافات خط الأساس حسب النسبة المئوية. يزداد الدعم من الفئات العمرية الأحدث إلى الأقدم.
ناتج أداة "التحقّق من الأساس" في "إحصاءات Google" تقسِّم الأداة دعم المستخدمين الفعليين لكل هدف أساسي. لاحظ أنّ إصدارات Baseline القديمة تحظى بتوافق أكبر مع الأجهزة الحقيقية.

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

تعرض بيانات Baseline في RUMvision بيانات التوافق لكل هدف من أهداف Baseline، بما في ذلك تفصيل لبيانات التوافق على مستوى الميزة.

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

إذا كنت تستخدم أداة إحصاءات أو أداة لمراقبة تجربة المستخدم الحقيقية لا توفّر تقريرًا عن استهداف خط الأساس حتى الآن ولكنّها تتضمّن بيانات عن إصدارات المتصفّح، يمكنك دمج بياناتك الواقعية مع عمليات ربط إصدارات المتصفّح من وحدة baseline-browser-mapping. يوفّر الوحدة النمطية دالة JavaScript - getAllVersions() - التي تربط المتصفّحات حسب الاسم والإصدار بسنة Baseline وحالة التوافق مع Widely available. يمكن تقديم عمليات الربط هذه على شكل مصفوفات أو عناصر ذات مفاتيح أو ملف CSV. على سبيل المثال، يستخدم "مدقّق الأداء الأساسي" في "إحصاءات Google" هذه الوحدة لربط بيانات الإحصاءات باستهدافات الأداء الأساسي.

تتوفّر مخرجات هذه الدالة أيضًا على شكل ملفات JSON أو CSV مستضافة يتم تعديلها يوميًا. يحتوي ملف all_versions_with_supports.csv على بيانات يمكنك مطابقتها مع بيانات إصدار المتصفّح لمقدّمي خدمات الإحصاءات باستخدام الحقول التالية:

  • browser: اسم المتصفّح المستخدَم في baseline-browser-mapping
  • version: إصدار المتصفّح تستخدم بعض المتصفّحات رقم إصدار رئيسي فقط، بينما تستخدم متصفّحات أخرى رقم إصدار major.minor.
  • year: مجموعة ميزات "السنة الأساسية" التي يتوافق معها إصدار المتصفّح هذا إذا تم إصدار نسخة متصفّح قبل أن يتم تحديد إمكانية التوافق مع Baseline في يوليو 2015، سيحتوي هذا الحقل على pre_baseline
  • supports: يحتوي هذا الحقل على widely أو newly لإصدارات المتصفّح التي تتوافق مع مجموعات الميزات هذه، ويكون فارغًا للإصدارات التي لا تتوافق مع أيّ من مجموعات الميزات هذه. تتوافق جميع إصدارات المتصفّح التي تتيح استخدام ميزة "متاح حديثًا" أيضًا مع ميزة "متاح على نطاق واسع".
  • release_date: تاريخ إصدار هذا الإصدار من المتصفّح، في حال توفّره
  • engine: اسم المحرّك للمتصفحات التي تستخدم إصدارًا أحدث من متصفّح Baseline الأساسي يتم تضمين المتصفّحات المستندة إلى Blink فقط، ولكن قد يتم تمثيل محركات المتصفّحات الأخرى في المستقبل.
  • engine_version: إصدار Chromium الذي يستخدمه إصدار المتصفّح هذا. يُستخدَم هذا الحقل لتحديد مجموعة ميزات Baseline التي يتوافق معها الإصدار الأدنى.

يتم تعديل هذا الملف بشكل متكرر عند طرح إصدارات جديدة من المتصفّح وتغيير حالة التوافق مع المتصفّحات المختلفة. احرص على إعادة تحميل البيانات يوميًا.

ماذا لو لم تتوفر لديّ بيانات دعم من مستخدمين حقيقيين؟

قد تجد نفسك في موقف لا يمكنك فيه الحصول على بيانات المستخدمين الفعليين عندما يتعلّق الأمر بالميزات الأساسية. والخبر السارّ هو أنّه يمكنك الحصول على فكرة عامة عن مدى توفّر الدعم لمختلف استهدافات Baseline من خلال إحصاءات "أرشيف بيانات تجربة المستخدم الحقيقية"، ما يتيح لك حتى الفلترة حسب البلد. مع أنّ هذه البيانات لن تكون خاصة بمستخدمي موقعك الإلكتروني. وهي أداة معلومات عامة توضّح أنّ الافتراضات التالية آمنة بشكل عام:

  • من المحتمل أن تحظى استهدافات Baseline الأحدث، مثل السنة الحالية أو السنة السابقة، بأقل قدر من الدعم بين المستخدمين. ومثل أي استهداف حسب "خط الأساس"، سيتم توفير دعم أفضل لهذه الاستراتيجية بمرور الوقت.
  • سيتم توفير دعم جيد لأهداف Baseline القديمة، لا سيما Baseline Widely available. في حال الشك، يُعدّ خيار "متاحة على نطاق واسع" هدفًا ممتازًا يتطوّر مع تقدّم فترة الـ 30 شهرًا بمرور الوقت.
  • ستتلقّى حتى استهدافات Baseline القديمة جدًا، أي تلك التي تتجاوز فترة 30 شهرًا المتاحة على نطاق واسع، أفضل دعم. على الرغم من أنّ "متاح على نطاق واسع" هو استهداف تلقائي جيد، إلا أنّ هناك حالات استخدام خاصة تتطلّب اتفاقيات مستوى خدمة صارمة.

من المحتمل أن تتمكّن من استخدام الميزات التي لا تستخدمها حاليًا، حتى إذا كنت تحدّد إصدارًا أساسيًا يزيد عمره عن خمس سنوات. في أفضل سيناريو، قد تكون تستخدم هذه الميزات حاليًا، ولكن مع polyfills قد لا تحتاج إليها.

كيف يمكنني فرض استهداف "المقياس الأساسي" الذي اخترته في مشروعي؟

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

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

ماذا عن الميزات التي لا تستوفي هدف "الأداء الأساسي"؟

بعد اختيار استهداف "خط الأساس"، قد تكون لديك ميزات تريد استخدامها ولكنّها لا تندرج ضمن هذا الاستهداف. لا يخبرك Baseline بما يجب فعله هنا، ويعتمد ما إذا كنت تريد استخدام هذه الميزات على نوع الموقع الإلكتروني الذي تنشئه والجمهور المتوقّع.

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

  • تحسين: إذا تم استخدام الميزة في متصفح غير متوافق، لن تتأثر التجربة. قد تنخفض جودة التجربة، ولكن من غير المرجّح أن يلاحظ المستخدم ذلك. مثال: loading="lazy"
  • إضافية: تقدّم الميزة بعض الفوائد الإضافية التي قد تكون ملحوظة، مثل تغييرات في تصميم الصفحة أو بعض الوظائف. وقد لا يلاحظ المستخدمون الفرق إذا كانت الميزة غير متوافقة، ما لم تتم المقارنة في متصفّح يتيح ذلك. مثال: الشبكة الفرعية
  • مهم: إذا كانت الميزة غير متوافقة، سيواجه المستخدم تجربة سلبية، وربما حتى تجربة معطّلة تمامًا. مثال: استخدام File System Access API كميزة مركزية وضرورية

قد تجد أيضًا أنّ ميزات معيّنة خارج نطاق استهدافك تتوافق مع عدد أكبر من المتصفحات مما تتوقّع. يمكنك معرفة عدد المستخدمين الذين يمكنهم الاستفادة من ميزة معيّنة. تتيح لك أداة Can I Use التحقّق من توافق الميزات الفردية مع بيانات الإحصاءات. تتيح RUMvision أيضًا إمكانية التوغّل في البيانات واستكشافها على مستوى الميزة إذا كان ذلك مفيدًا لك.

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

الخاتمة

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