العربية

تعلم كيفية استخدام تلميحات الموارد مثل preload و prefetch و preconnect لتحسين أوقات تحميل الموقع وتعزيز تجربة المستخدم عالميًا.

تعزيز سرعة الموقع باستخدام تلميحات الموارد: Preload، وPrefetch، وPreconnect

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

فهم تلميحات الموارد

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

تلميحات الموارد الأساسية الثلاثة هي:

Preload: إعطاء الأولوية للموارد الحرجة

ما هو Preload؟

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

متى تستخدم Preload؟

استخدم preload لـ:

كيفية تطبيق Preload

يمكنك تطبيق preload باستخدام وسم <link> في <head> الخاص بمستند HTML:

<link rel="preload" href="/fonts/myfont.woff2" as="font" type="font/woff2" crossorigin="anonymous">
<link rel="preload" href="/styles/critical.css" as="style">
<link rel="preload" href="/scripts/app.js" as="script">
<link rel="preload" href="/images/hero.jpg" as="image">

شرح:

مثال: التحميل المسبق لخط

تخيل أن لديك خطًا مخصصًا يسمى 'OpenSans' مستخدمًا على موقعك. بدون التحميل المسبق، يكتشف المتصفح هذا الخط فقط بعد تحليل ملف CSS. يمكن أن يسبب هذا تأخيرًا في تصيير النص بالخط الصحيح. من خلال التحميل المسبق للخط، يمكنك إزالة هذا التأخير.

<link rel="preload" href="/fonts/OpenSans-Regular.woff2" as="font" type="font/woff2" crossorigin="anonymous">

مثال: التحميل المسبق لملف CSS حرج

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

<link rel="preload" href="/styles/critical.css" as="style">

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

Prefetch: توقع الاحتياجات المستقبلية

ما هو Prefetch؟

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

متى تستخدم Prefetch؟

استخدم prefetch لـ:

كيفية تطبيق Prefetch

يمكنك تطبيق prefetch باستخدام وسم <link> في <head> الخاص بمستند HTML:

<link rel="prefetch" href="/page2.html">
<link rel="prefetch" href="/images/product.jpg">
<link rel="prefetch" href="/scripts/modal.js">

شرح:

مثال: الجلب المسبق لموارد الصفحة التالية

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

<link rel="prefetch" href="/form/step2.html">

مثال: الجلب المسبق لموارد نافذة منبثقة

إذا كان موقعك يستخدم نافذة منبثقة تقوم بتحميل موارد إضافية عند فتحها، يمكنك الجلب المسبق لتلك الموارد لضمان تجربة مستخدم سلسة.

<link rel="prefetch" href="/scripts/modal.js">
<link rel="prefetch" href="/styles/modal.css">

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

Preconnect: إنشاء اتصالات مبكرة

ما هو Preconnect؟

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

متى تستخدم Preconnect؟

استخدم preconnect لـ:

كيفية تطبيق Preconnect

يمكنك تطبيق preconnect باستخدام وسم <link> في <head> الخاص بمستند HTML:

<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link rel="preconnect" href="https://cdn.example.com">

شرح:

مثال: الاتصال المسبق بـ Google Fonts

إذا كان موقعك يستخدم Google Fonts، فإن الاتصال المسبق بـ https://fonts.gstatic.com يمكن أن يقلل بشكل كبير من زمن انتقال تحميل الخطوط.

<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>

تعتبر السمة `crossorigin` حاسمة هنا لأن Google Fonts تستخدم CORS لخدمة الخطوط.

مثال: الاتصال المسبق بشبكة توصيل المحتوى (CDN)

إذا كان موقعك يستخدم CDN لخدمة الأصول الثابتة، فإن الاتصال المسبق باسم مضيف CDN يمكن أن يقلل من زمن انتقال تحميل تلك الأصول.

<link rel="preconnect" href="https://cdn.example.com">

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

الجمع بين تلميحات الموارد لتحقيق الأداء الأمثل

تكمن القوة الحقيقية لتلميحات الموارد في الجمع بينها بشكل استراتيجي. إليك مثال عملي:

تخيل موقعًا يستخدم خطًا مخصصًا مستضافًا على CDN ويقوم بتحميل ملف JavaScript حرج.

  1. الاتصال المسبق بـ CDN: أنشئ اتصالًا مبكرًا بـ CDN الذي يستضيف الخط وملف JavaScript.
    <link rel="preconnect" href="https://cdn.example.com" crossorigin>
  2. التحميل المسبق للخط: أعطِ الأولوية لتحميل الخط لمنع FOUT.
    <link rel="preload" href="https://cdn.example.com/fonts/myfont.woff2" as="font" type="font/woff2" crossorigin="anonymous">
  3. التحميل المسبق لملف JavaScript: أعطِ الأولوية لتحميل ملف JavaScript لضمان توفره عند الحاجة.
    <link rel="preload" href="https://cdn.example.com/scripts/app.js" as="script">

أدوات لتحليل تلميحات الموارد

يمكن أن تساعدك العديد من الأدوات في تحليل فعالية تلميحات الموارد الخاصة بك:

المزالق الشائعة وكيفية تجنبها

مستقبل تلميحات الموارد

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

الخاتمة

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