Browserslistrc: Difference between revisions

From binaryoption
Jump to navigation Jump to search
Баннер1
(@pipegas_WP-test)
 
(@pipegas_WP-test)
 
Line 1: Line 1:
## ملف تكوين browserslistrc: دليل شامل للمبتدئين
```wiki
== browserslistrc: دليل شامل للمبتدئين ==


'''مقدمة'''
'''browserslistrc''' هو ملف إعدادات يستخدم لتحديد إصدارات المتصفحات المستهدفة لأدوات مثل [[Autoprefixer]]، [[Browsersync]]، و [[babel-preset-env]].  يسمح هذا الملف للمطورين بتحديد البيئات التي يجب أن يدعمها مشروعهم، مما يؤدي إلى تحسين الأداء وتقليل حجم الملفات.  هذا المقال موجه للمبتدئين ويهدف إلى شرح كل ما تحتاج لمعرفته حول ملف browserslistrc، بما في ذلك كيفية إنشائه، وتحريره، واستخدامه.


ملف `browserslistrc` هو ملف تكوين يُستخدم لتحديد المتصفحات المدعومة من قبل مشروع ويب. يلعب دوراً حيوياً في عملية [[تطوير الويب]] الحديث، خاصة مع استخدام أدوات مثل [[Autoprefixer]] و [[babel]]، حيث يحدد هذا الملف المتصفحات التي سيتم تحسين الكود لها. فهم هذا الملف ضروري لضمان أن موقعك أو تطبيقك يعمل بشكل صحيح على مجموعة واسعة من المتصفحات، مع الحفاظ على حجم الكود الأمثل. هذا المقال موجه للمبتدئين ويهدف إلى شرح كل ما تحتاج لمعرفته حول ملف `browserslistrc`، بدءاً من الأساسيات وصولاً إلى الاستخدامات المتقدمة.
=== ما هو browserslistrc ولماذا نستخدمه؟ ===


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


`browserslistrc` هو ملف نصي بسيط يحدد قائمة المتصفحات التي تريد أن يدعمها مشروعك. يمكن أن يكون هذا الملف موجوداً في أحد الأماكن التالية، بترتيب الأولوية:
*  '''تحسين الأداء:'''  من خلال استهداف المتصفحات التي يستخدمها جمهورك، يمكنك تجنب تضمين التعليمات البرمجية غير الضرورية التي قد تبطئ موقعك أو تطبيقك على المتصفحات التي لا يستخدمها أحد.
*  '''تقليل حجم الملفات:'''  تقليل التعليمات البرمجية غير الضرورية يؤدي مباشرة إلى تقليل حجم ملفاتك، مما يؤدي إلى أوقات تحميل أسرع وتجربة مستخدم أفضل.
*  '''التوافق:'''  يضمن أن موقعك أو تطبيقك يعمل بشكل صحيح على المتصفحات التي اخترت دعمها.
*  '''التكامل مع الأدوات:'''  العديد من أدوات تطوير الويب الشائعة، مثل Autoprefixer و Babel، تستخدم browserslistrc لتحديد المتصفحات المستهدفة تلقائيًا.


*  `.browserslistrc` في جذر المشروع.
=== إنشاء ملف browserslistrc ===
*  `package.json` في حقل `browserslist`.
*  ملف تكوين عام على مستوى النظام (نادر الاستخدام).


الأداة التي تستخدم `browserslistrc` (مثل Autoprefixer أو Babel) تقرأ هذا الملف لتحديد المتصفحات التي يجب أن تستهدفها عند تحويل أو تحسين الكود الخاص بك. هذا يضمن أن الكود الخاص بك متوافق مع هذه المتصفحات، مع تجنب تضمين تعليمات برمجية غير ضرورية للمتصفحات القديمة أو غير المدعومة.
ملف browserslistrc هو ملف نصي بسيط.  يمكنك إنشاؤه باستخدام أي محرر نصوص.  عادةً ما يتم وضعه في جذر مشروعك (root directory). إذا لم يكن موجودًا، فستستخدم الأدوات إعدادات افتراضية، والتي قد لا تكون مثالية لمشروعك.


'''لماذا نستخدم browserslistrc؟'''
اسم الملف يجب أن يكون بالضبط '''browserslistrc'''.  يمكن أن يكون امتداده إما `.js` أو `.json` أو `.txt`.  عادةً ما يتم استخدام `.js` لأنه يسمح بتعليقات.


هناك العديد من الأسباب لاستخدام ملف `browserslistrc`:
=== تنسيق ملف browserslistrc ===


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


'''بناء الجملة الأساسي لملف browserslistrc'''
'''الاختصارات:'''
    *  `chrome`:  متصفح [[Chrome]].
    *  `firefox`:  متصفح [[Firefox]].
    *  `safari`:  متصفح [[Safari]].
    *  `edge`:  متصفح [[Edge]].
    *  `ie`:  متصفح [[Internet Explorer]]. (تجنب دعمه إذا أمكن، بسبب المشاكل الأمنية)
    *  `opera`:  متصفح [[Opera]].
    *  `ios`:  متصفح [[iOS Safari]].
    *  `android`:  متصفح [[Android Chrome]].
    *  `node`:  بيئة [[Node.js]].
*  '''تحديد الإصدارات:'''
    *  `> 0.5%`:  استهداف المتصفحات التي لديها أكثر من 0.5% من حصة السوق العالمية.
    *  `last 2 versions`:  استهداف آخر إصدارين من كل متصفح.
    *  `> 1% in US`:  استهداف المتصفحات التي لديها أكثر من 1% من حصة السوق في الولايات المتحدة.
    *  `ie 11`:  استهداف متصفح Internet Explorer 11 فقط.
    *  `ios >= 10`:  استهداف إصدارات iOS 10 وما فوق.


ملف `browserslistrc` يستخدم بناء جملة بسيطاً لتحديد المتصفحات. يمكنك تحديد المتصفحات باستخدام:
=== أمثلة على ملف browserslistrc ===


*  **أسماء المتصفحات:** مثل `Chrome`, `Firefox`, `Safari`, `Edge`.
'''مثال 1: دعم أحدث إصدارين من المتصفحات الرئيسية'''
*  **الإصدارات:** مثل `Chrome 80`, `Firefox 70`, `Safari > 13`.
*  **المحددات:** مثل `>`, `<`, `>=`, `<=`.
*  **مواصفات النظام:** مثل `iOS 13`, `Android 9`.
 
يمكنك أيضاً استخدام عوامل التشغيل المنطقية مثل `and` و `or` و `not` لإنشاء قواعد أكثر تعقيداً.
 
'''أمثلة على ملفات browserslistrc'''
 
فيما يلي بعض الأمثلة على ملفات `browserslistrc`:
 
*  **دعم أحدث إصدارين من جميع المتصفحات الرئيسية:**


```
```
Line 46: Line 48:
```
```


*  **دعم Chrome و Firefox و Safari و Edge:**
هذا التكوين سيستهدف آخر إصدارين من Chrome و Firefox و Safari و Edge و Opera.
 
```
Chrome, Firefox, Safari, Edge
```


*  **دعم Chrome 80 والإصدارات الأحدث، و Firefox 70 والإصدارات الأحدث:**
'''مثال 2: دعم المتصفحات التي لديها أكثر من 1% من حصة السوق العالمية'''


```
```
Chrome 80, Firefox 70
> 1%
```
```


*  **دعم جميع المتصفحات التي تشغل iOS 13 والإصدارات الأحدث:**
هذا التكوين سيستهدف جميع المتصفحات التي لديها أكثر من 1% من حصة السوق العالمية.
 
```
iOS 13
```


*  **دعم جميع المتصفحات باستثناء Internet Explorer:**
'''مثال 3: دعم Chrome و Firefox و Safari فقط'''


```
```
> 0.2%, not IE
chrome
firefox
safari
```
```


*  **دعم المتصفحات التي لديها أكثر من 1% من الاستخدام العالمي:**
هذا التكوين سيستهدف Chrome و Firefox و Safari فقط.
 
```
> 1%
```


*  **دعم Chrome و Firefox و Safari على أجهزة Mac:**
'''مثال 4: دعم Internet Explorer 11 و Chrome الأخير'''


```
```
macOS Chrome, macOS Firefox, macOS Safari
ie 11
chrome last 1 version
```
```


'''خيارات متقدمة لملف browserslistrc'''
هذا التكوين سيستهدف Internet Explorer 11 وآخر إصدار من Chrome.


*  **استخدام النطاقات:** يمكنك استخدام النطاقات لتحديد مجموعة من المتصفحات. على سبيل المثال، `> 1%` يحدد جميع المتصفحات التي لديها أكثر من 1% من الاستخدام العالمي.
'''مثال 5: استخدام التعليقات (في ملف .js)'''
*  **استخدام عوامل التشغيل المنطقية:** يمكنك استخدام عوامل التشغيل المنطقية لإنشاء قواعد أكثر تعقيداً. على سبيل المثال، `Chrome > 80 and Firefox > 70` يحدد Chrome بالإصدار 80 أو أحدث و Firefox بالإصدار 70 أو أحدث.
*  **استخدام المواصفات:** يمكنك استخدام المواصفات لتحديد المتصفحات التي تدعم ميزات معينة.
*  **استخدام المتغيرات:** يمكنك استخدام المتغيرات لتخزين القيم وإعادة استخدامها في ملف `browserslistrc`.


'''أدوات تستخدم browserslistrc'''
```javascript
// دعم أحدث المتصفحات
last 2 versions


العديد من أدوات تطوير الويب تستخدم ملف `browserslistrc`. بعض الأمثلة تشمل:
// دعم Android
android >= 5
```


*  **Autoprefixer:** أداة تضيف بادئات المتصفح تلقائياً إلى CSS الخاص بك لضمان التوافق مع المتصفحات المختلفة. [[Autoprefixer]]
=== استخدام browserslistrc مع الأدوات ===
*  **Babel:** أداة تحول كود JavaScript الحديث إلى كود JavaScript متوافق مع المتصفحات القديمة. [[Babel]]
*  **Webpack:** أداة تجميع وحدات JavaScript. [[Webpack]]
*  **PostCSS:** أداة لتحويل CSS باستخدام المكونات الإضافية. [[PostCSS]]
*  **Stylelint:** أداة لتدقيق CSS. [[Stylelint]]


'''كيفية تحديد المتصفحات المستهدفة'''
'''Autoprefixer:'''  [[Autoprefixer]] هي أداة تضيف تلقائيًا بادئات المتصفح (vendor prefixes) إلى CSS الخاص بك.  يقرأ Autoprefixer ملف browserslistrc لتحديد البادئات التي يجب إضافتها.
*  '''Babel:'''  [[Babel]] هي أداة تحول كود JavaScript الحديث إلى كود JavaScript متوافق مع المتصفحات القديمة.  يقرأ Babel ملف browserslistrc لتحديد التحويلات التي يجب إجراؤها.
*  '''Browsersync:'''  [[Browsersync]] هي أداة إعادة تحميل المتصفح تلقائيًا.  يمكن لـ Browsersync استخدام ملف browserslistrc لتحديد المتصفحات التي يجب إعادة تحميلها.


لتحديد المتصفحات التي يجب أن تستهدفها، يمكنك استخدام العديد من المصادر:
=== استراتيجيات متقدمة ===


**Can I use:** موقع ويب يوفر معلومات حول دعم المتصفحات لميزات الويب المختلفة. [[Can I use]]
'''استهداف مناطق جغرافية محددة:'''  يمكنك استهداف المتصفحات التي لديها حصة سوقية معينة في منطقة جغرافية معينة.  على سبيل المثال، `> 5% in DE` يستهدف المتصفحات التي لديها أكثر من 5% من حصة السوق في ألمانيا.
**Global Stats:** موقع ويب يوفر إحصائيات حول استخدام المتصفحات حول العالم. [[Global Stats]]
'''استخدام عوامل التصفية:'''  يمكنك استخدام عوامل التصفية لتضمين أو استبعاد متصفحات معينة.  على سبيل المثال، `> 0.5% not ie` يستهدف جميع المتصفحات التي لديها أكثر من 0.5% من حصة السوق باستثناء Internet Explorer.
**StatCounter:** موقع ويب يوفر إحصائيات حول استخدام المتصفحات حول العالم. [[StatCounter]]
'''تحديد نطاقات الإصدارات:'''  يمكنك تحديد نطاقات الإصدارات.  على سبيل المثال، `ios 9-11` يستهدف إصدارات iOS من 9 إلى 11.
**تحليلات موقعك:** استخدم تحليلات موقعك لتحديد المتصفحات التي يستخدمها جمهورك.
'''استخدام ملفات متعددة:'''  يمكنك استخدام ملفات browserslistrc متعددة.  سيتم دمج هذه الملفات معًا.


'''أفضل الممارسات لاستخدام browserslistrc'''
=== أدوات مساعدة ===


**ابدأ بقاعدة عامة:** ابدأ بقاعدة عامة مثل `last 2 versions` أو `> 1%`.
'''Browserslist:'''  [[Browserslist]] هو حزمة npm التي يمكن استخدامها للاستعلام عن قائمة المتصفحات المستهدفة.
*  **خصص القاعدة حسب الحاجة:** خصص القاعدة حسب احتياجات مشروعك.
'''can i use:'''  موقع [[Can I use]] يوفر معلومات حول توافق المتصفحات مع ميزات CSS و JavaScript المختلفة.
*  **اختبر موقعك:** اختبر موقعك على المتصفحات التي تستهدفها.
**قم بتحديث ملف browserslistrc بانتظام:** قم بتحديث ملف `browserslistrc` بانتظام لمواكبة التغييرات في المتصفحات.
*  **استخدم أدوات التحقق:** استخدم أدوات التحقق للتأكد من أن ملف `browserslistrc` الخاص بك صحيح.


'''التحليل التقني والخيارات الثنائية: علاقة غير مباشرة'''
=== استراتيجيات الخيارات الثنائية ذات الصلة (للمعلومات العامة فقط، ليست مرتبطة مباشرة بـ browserslistrc) ===


على الرغم من أن `browserslistrc` يتعلق بشكل أساسي بتطوير الويب، إلا أنه يمكن أن يؤثر بشكل غير مباشر على أداء الحملات في [[الخيارات الثنائية]]إذا كان موقع الويب الخاص بك أو صفحة الهبوط الخاصة بك لا تعمل بشكل صحيح على المتصفحات التي يستخدمها جمهورك المستهدف، فقد يؤدي ذلك إلى انخفاض معدلات التحويللذلك، ضمان التوافق مع المتصفحات المختلفة أمر بالغ الأهميةتذكر أن [[تحليل حجم التداول]] لا يحل محل تجربة المستخدم الجيدة.
*  '''استراتيجية مارتينجال:''' مضاعفة الرهان بعد كل خسارة.
*  '''استراتيجية فيبوناتشي:''' استخدام أرقام فيبوناتشي لتحديد حجم الرهان.
*  '''استراتيجية المتوسط المتحرك:'''  تحليل الاتجاهات باستخدام المتوسطات المتحركة.
*  '''استراتيجية الاختراق:'''  الرهان على اختراق مستويات الدعم والمقاومة.
*  '''استراتيجية الارتداد:''' الرهان على ارتداد السعر عن مستويات الدعم والمقاومة.
*  '''استراتيجية بولينجر باندز:'''  استخدام نطاقات بولينجر لتحديد التقلبات.
*  '''استراتيجية مؤشر القوة النسبية (RSI):'''  تحديد حالات ذروة الشراء والبيع.
*  '''استراتيجية MACD:'''  تحليل الاتجاهات باستخدام MACD.
*  '''استراتيجية ستوكاستيك:'''  تحديد حالات ذروة الشراء والبيع باستخدام ستوكاستيك.
*  '''استراتيجية التداول المتأرجح:'''  الاستفادة من تقلبات الأسعار على المدى القصير.
*  '''تحليل حجم التداول:'''  تحديد قوة الاتجاهات من خلال حجم التداول.
*  '''تحليل الاتجاهات:'''  تحديد الاتجاهات الصاعدة والهابطة والجانبية.
*  '''استراتيجية 60 ثانية:'''  تداول الخيارات الثنائية بمدة صلاحية قصيرة (60 ثانية).
*  '''استراتيجية 5 دقائق:''' تداول الخيارات الثنائية بمدة صلاحية 5 دقائق.
*  '''استراتيجية التداول الليلي:'''  التداول خلال ساعات الليل.
*  '''استراتيجية التداول الآسيوي:'''  التداول خلال ساعات التداول الآسيوية.
*  '''استراتيجية التداول الأوروبي:'''  التداول خلال ساعات التداول الأوروبية.
*  '''استراتيجية التداول الأمريكي:'''  التداول خلال ساعات التداول الأمريكية.
*  '''استراتيجية الدخول عند الإغلاق:'''  الدخول في صفقة عند إغلاق الشمعة.
*  '''استراتيجية الدخول عند الاختراق:'''  الدخول في صفقة عند اختراق مستوى مقاومة أو دعم.
*  '''استراتيجية الدخول عند الارتداد:'''  الدخول في صفقة عند ارتداد السعر عن مستوى مقاومة أو دعم.
*  '''استراتيجية التداول بناءً على الأخبار:'''  التداول بناءً على الأخبار الاقتصادية والسياسية.
*  '''استراتيجية التداول بناءً على الأحداث:''' التداول بناءً على الأحداث الهامة مثل الانتخابات أو الإعلانات الاقتصادية.
*  '''استراتيجية التداول بناءً على التوقعات:'''  التداول بناءً على توقعات المحللين.
*  '''استراتيجية التداول بناءً على المشاعر:''' التداول بناءً على مشاعر السوق.


'''استراتيجيات الخيارات الثنائية المتعلقة بتجربة المستخدم'''
=== الخلاصة ===


*  **استراتيجية 60 ثانية:** تأكد من أن الموقع سريع الاستجابة على جميع المتصفحات لتجنب خسارة الفرص في هذه الاستراتيجية.
'''browserslistrc''' أداة قوية يمكن أن تساعدك في تحسين أداء موقعك أو تطبيقك وتقليل حجم الملفات.  من خلال تحديد المتصفحات التي تريد استهدافها، يمكنك التأكد من أن موقعك أو تطبيقك يعمل بشكل صحيح على المتصفحات التي يستخدمها جمهوركتذكر أن اختيار المتصفحات المستهدفة يعتمد على جمهورك وأهدافك.
*  **استراتيجية الاختراق:** صفحات الهبوط السريعة والموثوقة ضرورية لنجاح هذه الاستراتيجية.
*  **استراتيجية الاتجاه:**  إذا كان جمهورك يستخدم متصفحات قديمة، فقد يكون من الضروري تبسيط التصميم لضمان التوافق.
*  **استراتيجية مارتينجال:**  تتطلب هذه الاستراتيجية الوصول السريع والموثوق إلى منصة التداول، وهو ما يعتمد على أداء الموقع.
*  **استراتيجية المضاعفة:**  مثل استراتيجية مارتينجال، تعتمد على تجربة مستخدم سلسة.
*  **استراتيجية المتوسط المتحرك:**  لا ترتبط بشكل مباشر، ولكن الموقع السهل الاستخدام يمكن أن يساعد في تقليل التوتر أثناء التحليل.
*  **استراتيجية مؤشر القوة النسبية (RSI):**  يتطلب تحليلاً سريعاً، لذا يجب أن يكون الموقع سريع الاستجابة.
*  **استراتيجية بولينجر باندز:**  مثل استراتيجية RSI، تعتمد على تحليل سريع.
*  **استراتيجية MACD:**  تتطلب أيضاً تحليلاً سريعاً وواجهة مستخدم واضحة.
*  **استراتيجية فيبوناتشي:**  تتطلب عرضاً واضحاً للرسوم البيانية والمؤشرات.
*  **استراتيجيات قائمة على أنماط الشموع:**  تتطلب أيضاً عرضاً واضحاً للرسوم البيانية.
*  **استراتيجيات التحليل الفني:** تعتمد جميعها على سهولة استخدام الأدوات والرسوم البيانية.
*  **استراتيجيات التحليل الأساسي:**  قد تتطلب الوصول إلى مصادر الأخبار والبيانات الاقتصادية، لذا يجب أن يكون الموقع متوافقاً مع جميع المتصفحات.
*  **استراتيجيات إدارة المخاطر:**  لا ترتبط بشكل مباشر، ولكن الموقع السهل الاستخدام يمكن أن يساعد في اتخاذ قرارات مستنيرة.
*  **استراتيجيات التداول الآلي:**  تتطلب اتصالاً مستقراً وموثوقاً بالإنترنت، وهو ما يعتمد على أداء الموقع.
*  **استراتيجيات التداول اليومي:**  تتطلب تحليلاً سريعاً وواجهة مستخدم واضحة.
*  **استراتيجيات التداول المتأرجح:**  تتطلب أيضاً تحليلاً سريعاً وواجهة مستخدم واضحة.
*  **استراتيجيات التداول طويل الأجل:**  قد تكون أقل حساسية لأداء الموقع، ولكن التوافق مع المتصفحات المختلفة لا يزال مهماً.
*  **استراتيجية التداول على الأخبار:**  تتطلب الوصول السريع إلى مصادر الأخبار، لذا يجب أن يكون الموقع سريع الاستجابة.
*  **استراتيجية التداول على الأحداث:**  مثل استراتيجية التداول على الأخبار، تتطلب الوصول السريع إلى المعلومات.
*  **استراتيجية التداول على الفروق السعرية:**  تتطلب تحليلاً سريعاً للرسوم البيانية.
*  **استراتيجيات التداول على العملات الأجنبية (Forex):**  تتطلب أيضاً تحليلاً سريعاً وواجهة مستخدم واضحة.
*  **استراتيجيات التداول على السلع:**  مثل استراتيجيات التداول على العملات الأجنبية، تتطلب تحليلاً سريعاً.


'''الخلاصة'''
[[Autoprefixer]]
[[Browsersync]]
[[babel-preset-env]]
[[Node.js]]
[[Chrome]]
[[Firefox]]
[[Safari]]
[[Edge]]
[[Internet Explorer]]
[[Opera]]
[[iOS Safari]]
[[Android Chrome]]
[[Can I use]]
[[Browserslist]]
[[CSS]]
[[JavaScript]]
```


ملف `browserslistrc` هو أداة قوية لتحديد المتصفحات المدعومة من قبل مشروعك. من خلال فهم كيفية عمل هذا الملف وكيفية استخدامه بشكل فعال، يمكنك ضمان أن موقعك أو تطبيقك يعمل بشكل صحيح على مجموعة واسعة من المتصفحات، مع الحفاظ على حجم الكود الأمثل. تذكر أن تجربة المستخدم الجيدة ضرورية لنجاح أي مشروع ويب، ويمكن أن تؤثر بشكل إيجابي على أداء حملات [[التسويق بالعمولة]] أو حتى [[الخيارات الثنائية]].
[[Category:ملفات_إعدادات (Configuration files)]]
 
```
[[Category:ملفات_التكوين]]


== ابدأ التداول الآن ==
== ابدأ التداول الآن ==

Latest revision as of 03:12, 22 April 2025

```wiki

browserslistrc: دليل شامل للمبتدئين

browserslistrc هو ملف إعدادات يستخدم لتحديد إصدارات المتصفحات المستهدفة لأدوات مثل Autoprefixer، Browsersync، و babel-preset-env. يسمح هذا الملف للمطورين بتحديد البيئات التي يجب أن يدعمها مشروعهم، مما يؤدي إلى تحسين الأداء وتقليل حجم الملفات. هذا المقال موجه للمبتدئين ويهدف إلى شرح كل ما تحتاج لمعرفته حول ملف browserslistrc، بما في ذلك كيفية إنشائه، وتحريره، واستخدامه.

ما هو browserslistrc ولماذا نستخدمه؟

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

  • تحسين الأداء: من خلال استهداف المتصفحات التي يستخدمها جمهورك، يمكنك تجنب تضمين التعليمات البرمجية غير الضرورية التي قد تبطئ موقعك أو تطبيقك على المتصفحات التي لا يستخدمها أحد.
  • تقليل حجم الملفات: تقليل التعليمات البرمجية غير الضرورية يؤدي مباشرة إلى تقليل حجم ملفاتك، مما يؤدي إلى أوقات تحميل أسرع وتجربة مستخدم أفضل.
  • التوافق: يضمن أن موقعك أو تطبيقك يعمل بشكل صحيح على المتصفحات التي اخترت دعمها.
  • التكامل مع الأدوات: العديد من أدوات تطوير الويب الشائعة، مثل Autoprefixer و Babel، تستخدم browserslistrc لتحديد المتصفحات المستهدفة تلقائيًا.

إنشاء ملف browserslistrc

ملف browserslistrc هو ملف نصي بسيط. يمكنك إنشاؤه باستخدام أي محرر نصوص. عادةً ما يتم وضعه في جذر مشروعك (root directory). إذا لم يكن موجودًا، فستستخدم الأدوات إعدادات افتراضية، والتي قد لا تكون مثالية لمشروعك.

اسم الملف يجب أن يكون بالضبط browserslistrc. يمكن أن يكون امتداده إما `.js` أو `.json` أو `.txt`. عادةً ما يتم استخدام `.js` لأنه يسمح بتعليقات.

تنسيق ملف browserslistrc

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

  • الاختصارات:
   *   `chrome`:  متصفح Chrome.
   *   `firefox`:  متصفح Firefox.
   *   `safari`:  متصفح Safari.
   *   `edge`:  متصفح Edge.
   *   `ie`:  متصفح Internet Explorer. (تجنب دعمه إذا أمكن، بسبب المشاكل الأمنية)
   *   `opera`:  متصفح Opera.
   *   `ios`:  متصفح iOS Safari.
   *   `android`:  متصفح Android Chrome.
   *   `node`:  بيئة Node.js.
  • تحديد الإصدارات:
   *   `> 0.5%`:  استهداف المتصفحات التي لديها أكثر من 0.5% من حصة السوق العالمية.
   *   `last 2 versions`:  استهداف آخر إصدارين من كل متصفح.
   *   `> 1% in US`:  استهداف المتصفحات التي لديها أكثر من 1% من حصة السوق في الولايات المتحدة.
   *   `ie 11`:  استهداف متصفح Internet Explorer 11 فقط.
   *   `ios >= 10`:  استهداف إصدارات iOS 10 وما فوق.

أمثلة على ملف browserslistrc

مثال 1: دعم أحدث إصدارين من المتصفحات الرئيسية

``` last 2 versions ```

هذا التكوين سيستهدف آخر إصدارين من Chrome و Firefox و Safari و Edge و Opera.

مثال 2: دعم المتصفحات التي لديها أكثر من 1% من حصة السوق العالمية

``` > 1% ```

هذا التكوين سيستهدف جميع المتصفحات التي لديها أكثر من 1% من حصة السوق العالمية.

مثال 3: دعم Chrome و Firefox و Safari فقط

``` chrome firefox safari ```

هذا التكوين سيستهدف Chrome و Firefox و Safari فقط.

مثال 4: دعم Internet Explorer 11 و Chrome الأخير

``` ie 11 chrome last 1 version ```

هذا التكوين سيستهدف Internet Explorer 11 وآخر إصدار من Chrome.

مثال 5: استخدام التعليقات (في ملف .js)

```javascript // دعم أحدث المتصفحات last 2 versions

// دعم Android android >= 5 ```

استخدام browserslistrc مع الأدوات

  • Autoprefixer: Autoprefixer هي أداة تضيف تلقائيًا بادئات المتصفح (vendor prefixes) إلى CSS الخاص بك. يقرأ Autoprefixer ملف browserslistrc لتحديد البادئات التي يجب إضافتها.
  • Babel: Babel هي أداة تحول كود JavaScript الحديث إلى كود JavaScript متوافق مع المتصفحات القديمة. يقرأ Babel ملف browserslistrc لتحديد التحويلات التي يجب إجراؤها.
  • Browsersync: Browsersync هي أداة إعادة تحميل المتصفح تلقائيًا. يمكن لـ Browsersync استخدام ملف browserslistrc لتحديد المتصفحات التي يجب إعادة تحميلها.

استراتيجيات متقدمة

  • استهداف مناطق جغرافية محددة: يمكنك استهداف المتصفحات التي لديها حصة سوقية معينة في منطقة جغرافية معينة. على سبيل المثال، `> 5% in DE` يستهدف المتصفحات التي لديها أكثر من 5% من حصة السوق في ألمانيا.
  • استخدام عوامل التصفية: يمكنك استخدام عوامل التصفية لتضمين أو استبعاد متصفحات معينة. على سبيل المثال، `> 0.5% not ie` يستهدف جميع المتصفحات التي لديها أكثر من 0.5% من حصة السوق باستثناء Internet Explorer.
  • تحديد نطاقات الإصدارات: يمكنك تحديد نطاقات الإصدارات. على سبيل المثال، `ios 9-11` يستهدف إصدارات iOS من 9 إلى 11.
  • استخدام ملفات متعددة: يمكنك استخدام ملفات browserslistrc متعددة. سيتم دمج هذه الملفات معًا.

أدوات مساعدة

  • Browserslist: Browserslist هو حزمة npm التي يمكن استخدامها للاستعلام عن قائمة المتصفحات المستهدفة.
  • can i use: موقع Can I use يوفر معلومات حول توافق المتصفحات مع ميزات CSS و JavaScript المختلفة.

استراتيجيات الخيارات الثنائية ذات الصلة (للمعلومات العامة فقط، ليست مرتبطة مباشرة بـ browserslistrc)

  • استراتيجية مارتينجال: مضاعفة الرهان بعد كل خسارة.
  • استراتيجية فيبوناتشي: استخدام أرقام فيبوناتشي لتحديد حجم الرهان.
  • استراتيجية المتوسط المتحرك: تحليل الاتجاهات باستخدام المتوسطات المتحركة.
  • استراتيجية الاختراق: الرهان على اختراق مستويات الدعم والمقاومة.
  • استراتيجية الارتداد: الرهان على ارتداد السعر عن مستويات الدعم والمقاومة.
  • استراتيجية بولينجر باندز: استخدام نطاقات بولينجر لتحديد التقلبات.
  • استراتيجية مؤشر القوة النسبية (RSI): تحديد حالات ذروة الشراء والبيع.
  • استراتيجية MACD: تحليل الاتجاهات باستخدام MACD.
  • استراتيجية ستوكاستيك: تحديد حالات ذروة الشراء والبيع باستخدام ستوكاستيك.
  • استراتيجية التداول المتأرجح: الاستفادة من تقلبات الأسعار على المدى القصير.
  • تحليل حجم التداول: تحديد قوة الاتجاهات من خلال حجم التداول.
  • تحليل الاتجاهات: تحديد الاتجاهات الصاعدة والهابطة والجانبية.
  • استراتيجية 60 ثانية: تداول الخيارات الثنائية بمدة صلاحية قصيرة (60 ثانية).
  • استراتيجية 5 دقائق: تداول الخيارات الثنائية بمدة صلاحية 5 دقائق.
  • استراتيجية التداول الليلي: التداول خلال ساعات الليل.
  • استراتيجية التداول الآسيوي: التداول خلال ساعات التداول الآسيوية.
  • استراتيجية التداول الأوروبي: التداول خلال ساعات التداول الأوروبية.
  • استراتيجية التداول الأمريكي: التداول خلال ساعات التداول الأمريكية.
  • استراتيجية الدخول عند الإغلاق: الدخول في صفقة عند إغلاق الشمعة.
  • استراتيجية الدخول عند الاختراق: الدخول في صفقة عند اختراق مستوى مقاومة أو دعم.
  • استراتيجية الدخول عند الارتداد: الدخول في صفقة عند ارتداد السعر عن مستوى مقاومة أو دعم.
  • استراتيجية التداول بناءً على الأخبار: التداول بناءً على الأخبار الاقتصادية والسياسية.
  • استراتيجية التداول بناءً على الأحداث: التداول بناءً على الأحداث الهامة مثل الانتخابات أو الإعلانات الاقتصادية.
  • استراتيجية التداول بناءً على التوقعات: التداول بناءً على توقعات المحللين.
  • استراتيجية التداول بناءً على المشاعر: التداول بناءً على مشاعر السوق.

الخلاصة

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

Autoprefixer Browsersync babel-preset-env Node.js Chrome Firefox Safari Edge Internet Explorer Opera iOS Safari Android Chrome Can I use Browserslist CSS JavaScript ``` ```

ابدأ التداول الآن

سجّل في IQ Option (الحد الأدنى للإيداع 10 دولار) افتح حساباً في Pocket Option (الحد الأدنى للإيداع 5 دولار)

انضم إلى مجتمعنا

اشترك في قناة Telegram الخاصة بنا @strategybin لتصلك: ✓ إشارات تداول يومية ✓ تحليلات استراتيجية حصرية ✓ تنبيهات اتجاهات السوق ✓ مواد تعليمية للمبتدئين

Баннер