خواص غير مُعلن عنها في الإصدار 4.4 من نظام Android تُمهّد لثورة في عالم الأجهزة المحمولة

نُشر يوم 2 ديسمبر 2013 بواسطة يوغرطة بن علي (Youghourta Benali)


من المُسلّم به بأن نظام أندرويد هو النظام الأكثر شعبية على الهواتف الذكية، ويكفي للمُشكك أن يُلقي نظرة على أحدث إحصائيات نشرتها Strategy Analytics ليتحقق من ذلك، حيث تُشير هذه الأخيرة إلى أن نظام Android يحتل 81% من مجموع ما تم شحنه من هواتف ذكية خلال الربع الثالث من العام الجاري Android Captures Record 81 Percent Share of Global Smartphone Shipments in Q3 2013. نعم، 4 من كل 5 هواتف ذكية تم شحنها إلى المُوزعين تعمل بنظام تشغيل Google، وهذا لا يرجع بالضرورة إلى كون هواتف أندرويد أفضل من iPhone مثلا (لا داعي لأن نخوض في هذا الجدال العقيم من جديد)، ولكن بكل بساطة لأن نسبة الجودة إلى السعر على هواتف أندرويد أعلى من هذه النسبة على غيرها.

Smartphone_OS

لم تحتج Google سوى لخمس سنوات لفرض نظام التشغيل الخاص بها على السوق، أحدث خلالها جملة من التغييرات على النظام. لم يَشُذ أحدث إصدار من النظام الذي يحمل الترقيم 4.4 والمُسمى بـ KitKat عن القاعدة التي اتبعتها الإصدارات السابقة له حيث أتى بالعديد من التحديثات التي ستُغير من وجه النظام. الأمر ليس راجعا بشكل أساسي إلى تغييرات في شكل النظام فحسب (10 Things Developers And Users Need To Know About Android KitKat 4.4) وإنما لأمور لا تظهر للعين المُجردة بحكم أنها تغييرات تخص الطبقات السُفلى من النظام. لم تمض سوى أسابيع قليلة منذ إطلاق هذا الإصدار، إلا أنها فترة كافية لفهم الثورة التي ستُحدثها عما قريب.

QuickOffice

أول الغيث مع تطبيق QuickOffice الذي يأتي مُضمنا في أندرويد 4.4 . يسمح هذا التطبيق الذي قامت Google بشرائه العام الماضي بتحرير ملفات حزمة Office المكتبية. قامت Google بتضمين التطبيق في هذا الإصدار بُعيد إعلانها عن توفيره بشكل مجاني على متجر Google Play وبربطه بخدمة Google Drive السحابية Freeing Quickoffice for everyone.

quickoffice

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

ART :Android RunTime

الخاصية الثانية التي أثارت ضجة كبيرة هي توفير ART، الإصدار الجديد من بيئة تنفيذ التطبيقات والذي يُفترض بها أن تستبدل بيئة التنفيذ Dalvik المُستعملة حاليا: Google starts testing ART, a potential replacement for Dalvik in Android. لتلخيص الأمر، تُعتبر Java لغة البرمجة الأساسية لكتابة تطبيقات نظام أندرويد، وبحكم أنها لغة مُتعددة المنصات (أي أنه يُمكن تنفيذ نفس الشفرة البرمجية على أكثر من نظام تشغيل دون الحاجة إلى إعادة كتابتها) فإنه تتم ترجمة الشفرات إلى ما يُعرف بـ Bytcode يتم تنفيذه في الآلة الافتراضية الخاصة باللغة، على عكس اللغات الأخرى والتي تتم ترجمتها مُباشرة إلى لغة الآلة ليتم تنفيذها على نظام تشغيل مُعين. إلى غاية الساعة تقوم الأجهزة التي تعمل بنظام Android بالاستعانة ببيئة تشغيل (آلة افتراضية) يُطلق عليها اسم Dalvik والذي يقوم بترجمة (Compil) الـ Bytocode لدى الحاجة ليتمكن من تفسيره (interpret). لكن مع ART (والذي هو اختصار لـ Android RunTime) فإنه سيتم القيام بترجمة مُسبقة (precompilation) مما يسمح برفع مُستوى أداء التطبيقات بشكل عام: Meet ART, The New Super-Fast Android Runtime Google Has Been Working On In Secret For Over 2 Years.

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

ART

حسب التجارب الأولية لهذه الخاصية، فإن عملية تفعيل ART تستغرق فترة زمنية طويلة نسبيا (تُماثل الفترة التي يتم فيها تحديث النظام)، لكن التحسن في أداء التطبيقات الذي ينتج عن ذلك ملحوظ بشكل واضح. هدف هذه العملية هو تسريع تشغيل التطبيقات وتوفير تجربة مُستخدم أكثر سلاسة.

لكن في المقابل ستحتاج التطبيقات التي خضغت لعملية الترجمة المُسبقة لمساحة تخزين إضافية تُقدر ما بين 10 إلى 20% حسب بعض التجارب الأولية، وهي زيادة مقبولة نظرا للتحسن في أداء التطبيقات. ما لم تكن مُطورا تعي جيدا ما تقوم به فلا يُنصح بتفعيل ART للمُستخدمين العادين حاليا حيث أنه من المُحتمل أن تتوقف بعض التطبيقات جراء ذلك. لم يتم الكشف عن موعد مُحدد لتفعيل هذه الخاصية بشكل قياسي، لكن من المُتوقع أن يتم ذلك في التحديث الرئيسي القادم للنظام (والذي يُحتمل أن يحمل الترقيم 5).

إصدار جديد من WebView

يحمل الإصدر Kitkat من نظام أندرويد في طياته إصدارا جديدا منWebView، الواجهة البرمجية التي تسمح للتطبيقات باستعراض شفرات HTML / CSS داخل التطبيقات ( Introducing Chromium-powered Android WebView). إلى حد الساعة فإنه تتم الاستعانة بمتصفح أندرويد الافتراضي لاستعراض شفرات HTML المُضمنة في تطبيقات أندرويد، وهو مُتصفح ضعيف الأداء. مع هذا الإصدار الجديد من WebView فإنه سيتم استخدام مُحرك تصيير Chromium الذي يعتمد على مُحرك V8 الخاص بـ JavaScript للقيام بذلك، وهو ما سيُمكن المُطورين من استغلال كامل قوة الثلاثي HTML / CSS / JavaScript داخل تطبيقاتهم: KitKat’s WebView is powered by Chromium, enabling Android app developers to use new HTML5 and CSS features. ما الذي يعنيه ذلك؟ بكل بساطة سيحصل أندرويد على تطبيقات أكثر كفاءة، أسرع وأكثر ثباتا…

Portable Native Client

آخر خاصية في هذه السلسلة هو إطلاق Portable Native Client التقنية التي ستسمح للمُطورين بترجمة شفرات C /C++ وتنفيذها مُباشرة داخل المُتصفح مع المُحافظة على مُستوى أدائها كاملا: Google launches Portable Native Client, lets developers compile their code to run on any hardware and website. مثلما هو عليه الحال مع WebView فإن إطلاق هذه الخاصية لم يكن مُمكنا لو لم يتم استبدال المُتصفح الافتراضي السابق بمُتصفح Chrome. بفضل Portable Native Client سيُصبح بإمكان هواتف أندرويد تنفيذ تطبيقات “ثقيلة” من خلال مُتصفح كروم تماما مثلما يُمكن تنفيذها على الحواسيب الشخصية باستخدام تقنية Nacl (الأخ الأكبر لخاصية Portable NaCl). ما نتحدث عنه هنا هو خاصية في غاية الأهمية والقوة، لكن من جديد بحكم أنها تقنية يصعب شرحها وتقديمها للُمستخدم البسيط فإن Google لا تُحاول إضاعة الكثير من الوقت في الترويج لها، فليس من الهيّن أن تشرح لمستخدم بسيط مدى أهمية أن يسمح PnaCl بترجمة تطبيق مكتوب بلغة C++ إلى Bytecode للتمكن من تنفيذه على هاتف ذكي سواء كان يعتمد على معمارية ARM، x86 أو MIPS، وهو أمر يُمكن القيام به على مُتصفحات أخرى بفضل واجهة Pepper البرمجية.

لتلخيص الوضع، يُمكن القول بأن الإصدار 4.4 من نظام أندرويد عبارة عن إعادة بناء كاملة لبيئات تنفيذ التطبيقات (سواء كانت مكتوبة بـ Java أو بـ C/C++) وتطبيقات الويب (المكتوبة بـ HTML5)، وبالتالي التطبيقات الهجينة أيضا. من المُبكر جدا أن نقيس مدى تأثير هذه التغييرات على تجربة المُستخدم واستهلاك الطاقة، لكن في كل الأحوال سيكون تأثيرا إيجابيا بشكل عام يستفيد منه المُستخدم.

ترجمة -وبتصرف- للمقال: Google prépare la révolution des interfaces Android لصاحبه: Frédéric Cavazza