الجديد في Chrome 67

وهناك الكثير غير ذلك.

اسمي بيت ليبيه. لنطّلع على الميزات الجديدة للمطوّرين في الإصدار 67 من Chrome.

هل تريد الاطّلاع على القائمة الكاملة بالتغييرات؟ اطّلِع على قائمة التغييرات في مستودع مصدر Chromium.

تطبيقات الويب المتوافقة مع الأجهزة المكتبية

تطبيق الويب التقدّمي على سطح المكتب من Spotify

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

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

إذا استوفى تطبيقك معايير صفحات الويب التقدّمية (PWA) العادية، سيُنشِط Chrome حدث beforeinstallprompt، ولكنه لن يطلب من المستخدم تلقائيًا. بدلاً من ذلك، يمكنك حفظ الحدث، ثم إضافة بعض عناصر واجهة المستخدم، مثل زر تثبيت التطبيق، إلى تطبيقك لإعلام المستخدم بإمكانية تثبيت تطبيقك. بعد ذلك، عندما ينقر المستخدم على الزر، سيتم عرض طلب الاتصال على الحدث المحفوظ، وسيعرض Chrome الطلب للمستخدم. إذا نقر المستخدم على "إضافة"، سيضيف Chrome تطبيق الويب التقدّمي (PWA) إلى الرف ومشغِّل التطبيقات.

يمكنك الاطّلاع على محاضرتي في مؤتمر Google I/O التي أوضحت فيها مع "جيني" بالتفصيل الملاحظات الفنية والخاصة المتعلقة بالتصميم التي يجب مراعاتها عند إنشاء تطبيق ويب تقدّمي لأجهزة الكمبيوتر المكتبي.

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

Generic Sensor API

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

تتكوّن واجهة برمجة التطبيقات من واجهة Sensor الأساسية مع مجموعة من klassen الاستشعار المحدّدة التي تم إنشاؤها في الأعلى. تبسّط الواجهة الأساسية عملية التنفيذ وعملية تحديد مواصفات فئات أجهزة الاستشعار المحدّدة. على سبيل المثال، فئة Gyroscope صغيرة جدًا.

const sensor = new Gyroscope({frequency: 500});
sensor.start();

sensor.onreading = () => {
    console.log("X-axis " + sensor.x);
    console.log("Y-axis " + sensor.y);
    console.log("Z-axis " + sensor.z);
};

يتم تحديد الوظيفة الأساسية من خلال الواجهة الأساسية، ويقوم الجيروسكوب بتوسيعها بثلاث سمات تمثل السرعة الزاويّة. يتوافق Chrome 67 مع مقياس التسارع والجيروسكوب وجهاز استشعار الاتجاه وأداة استشعار الحركة.

جمعت شركة Intel عدة عروض توضيحية لواجهة برمجة التطبيقات العامة لأجهزة الاستشعار وعيّنات من الرموز البرمجية، كما عدلت المشاركة Sensors for the Web! (أجهزة الاستشعار على الويب) التي نشرتها في أيلول (سبتمبر) لتتضمّن كل ما تحتاج إلى معرفته.

BigInt ثانية

BigInt هي عناصر رقمية أساسية جديدة في JavaScript يمكنها تمثيل الأعداد الصحيحة بدقة عشوائية. لا يمكن تمثيل المعرّفات الصحيحة الكبيرة والطابعات الزمنية العالية الدقة بأمان على أنّها Numbers في JavaScript، ما يؤدي غالبًا إلى حدوث أخطاء في الواقع (ما يؤدي غالبًا إلى تمثيل هذه الأرقام على أنّها سلاسل بدلاً من ذلك).

let max = Number.MAX_SAFE_INTEGER;
// → 9_007_199_254_740_991
max = max + 1;
// → 9_007_199_254_740_992 - Yay!
max = max + 1;
// → 9_007_199_254_740_992 - Uh, no?

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

let max = BigInt(Number.MAX_SAFE_INTEGER);
// → 9_007_199_254_740_991n
max = max + 9n;
// → 9_007_199_254_741_000n - Yay!

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

وغير ذلك

هذه ليست سوى بعض التغييرات في الإصدار 67 من Chrome للمطوّرين، وبالطبع، هناك المزيد.

أصبحت واجهة برمجة التطبيقات Credential Management API متاحة منذ الإصدار 51 من Chrome، وهي توفّر إطار عمل لإنشاء بيانات الاعتماد واستردادها وتخزينها. وقد تم ذلك من خلال نوعَين من بيانات الاعتماد:PasswordCredential وFederatedCredential. تضيف Web Authentication API نوعًا ثالثًا من بيانات الاعتماد، وهو PublicKeyCredential، والذي يسمح للمتصفّحات بمصادقة مستخدم باستخدام مفتاحَي تشفير خاص/عام تم إنشاؤهما بواسطة معتمِد، مثل مفتاح أمان أو قارئ بصمة أو أي جهاز آخر يمكنه مصادقة مستخدم. يتيح الإصدار 67 من Chrome واجهة برمجة التطبيقات باستخدام مصادقة U2F/CTAP 1 عبر نقل USB على الكمبيوتر المكتبي.

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

اختتام مؤتمر Google I/O

إذا لم تتمكن من حضور مؤتمر I/O أو إذا شاركت فيه ولكنك لم تشاهد كل المناقشات المتعلّقة بالويب، يمكنك الاطّلاع على قائمة تشغيل Chrome والويب للتعرّف على آخر الأخبار من Google I/O.

الميزات الجديدة في "أدوات مطوري البرامج"

اطّلع على جديد في أدوات مطوري البرامج في Chrome للتعرّف على الميزات الجديدة في "أدوات مطوري البرامج" في Chrome 67.

اشتراك

بعد ذلك، انقر على الزر اشتراك في قناتنا على YouTube، وستلقّى إشعارًا عبر البريد الإلكتروني كلما طرحنا فيديو جديدًا.

اسمي "بيت ليبيت"، وسأطلعك على الميزات الجديدة في Chrome فور طرح الإصدار 68.