ما هو تطبيق Universal Windows Platform (UWP) بالضبط؟
OPTAD-1
غالبًا ما تكون الكتابة عن التكنولوجيا عملاً متوازنًا. يرغب بعض الأشخاص في الحصول على أخبار تقنية عامة ، بينما يرغب البعض الآخر في الغوص العميق. عندما يتعلق الأمر بتطوير البرامج وأنظمة التشغيل ، فغالبًا ما أجد نفسي في رأسي غير مبرمج. هذا هو السبب في أن UWP عبارة عن فوضى مشبعة بالبخار للحديث عنها من أجل 'مستهلكي المنتجات'.
اليوم ، سوف أتناول هذا الموضوع المترابط.
من هو UWP حتى ل ؟
قبل أن أحاول شرح ماهية النظام الأساسي لتطوير برامج Microsoft لنظام التشغيل Windows 10 ، دعنا نخرج هذا بعيدًا: مصطلح 'UWP' ليس مصطلحًا موجهًا للمستهلك ، إنه للمطورين.
OPTAD-2
يجب ألا يدخل العميل في أي وقت إلى Best Buy ويستفسر من موظف المبيعات عن تطبيقات UWP التي يمكن لجهاز الكمبيوتر تشغيلها. في الواقع ، القاعدة الأساسية في التكنولوجيا هي أنه إذا كان عليك أن تشرح شيئًا لشخص ما ، فمن المحتمل أن المنتج قد فشل بالفعل.
ومع ذلك ، في Windows Central ، ننتقل ذهابًا وإيابًا بين أخبار المستهلك وإرشاداته ومقالات أكثر إفادة تناقش تقنية Microsoft وتطوير نظام التشغيل واتجاهات الحوسبة العامة. في تقاريرنا ، يجب أن نتحدث عن UWP لفهم Windows 10. ومع ذلك ، بالنسبة للمستهلكين غير المحترفين ، يجب أن يكون أبسط.
OPTAD-3
'العالمي' يفعل ليس يعني الركض في كل مكان
على المستوى التقني ، UWP هو امتداد Microsoft لمنصة Windows Runtime التي تستفيد من لغات الترميز C ++ و C # و VB.NET و XAML. هناك بعض الأفكار الرئيسية وراء UWP ، والتي تشمل:
- مجموعة أدوات API العالمية.
- تصميم سريع الاستجابة وقياس في التطبيقات.
- ضوابط عالمية وأنماط ومدخلات وتفاعلات.
- الخدمات السحابية والذكاء الاصطناعي والخدمات المعرفية.
- مخزن واحد للتوزيع.
- مجموعة تطوير برمجيات واحدة (SDK).
الشيء المربك لجمهورنا هو 'العالمي' في 'النظام الأساسي العالمي لـ Windows'. في حين أن هدف UWP هو السماح للمطورين بمشاركة الكود بين التطبيقات واستخدام مجموعة واسعة من واجهات برمجة التطبيقات ، إلا أن هذا لا يعني بالضرورة أنه من المفترض أن يعمل تطبيق UWP في كل مكان ، مثل الهواتف وأجهزة الكمبيوتر وأجهزة Xbox و HoloLens و IoT الأجهزة.
OPTAD-4
من الناحية المثالية ، سيقوم مطور التطبيقات بكتابة تطبيق UWP أصلي يعمل فقط عبر جميع أجهزة Windows 10 ، ولكن في بعض الأحيان لا يكون هذا منطقيًا. على سبيل المثال ، بعض تطبيقات الهاتف فقط لها قيمة قليلة على سطح المكتب. قد تكون بعض ألعاب UWP كثيفة الاستخدام للموارد بالنسبة للهاتف ، أو قد لا تكون ميزة تشغيل تطبيق الخرائط على Xbox الخاص بك بديهية (حتى لو كان متاحًا ، فمن المحتمل ألا يتم استخدامه كثيرًا).
يشير 'العام' في UWP إلى واجهات برمجة التطبيقات والموارد المشتركة التي يمكن للمطورين الوصول إليها عند كتابة تطبيق ، وليس وجهة أجهزة التطبيق. لا أستطيع أن أؤكد هذا بما فيه الكفاية. فقط لأن التطبيق متاح فقط على Xbox أو يمكن تثبيته فقط على Windows 10 Mobile لا يعني أنه ليس UWP أو حتى 'UWP حقيقي' ، والذي ليس له تعريف تقني.
تطبيقات Windows Bridge هي UWP أيضًا
للإضافة إلى الارتباك ، قدمت Microsoft Windows Bridges قبل بضع سنوات خلال مؤتمر Build Developer.
كل ما تحتاج إلى معرفته هو أن التطبيق الذي يستفيد من Windows Desktop Bridge (المعروف أيضًا باسم Project Centennial) ، وتطبيقات الويب التقدمية ( مشروع وستمنستر ) مثل LinkedIn ، أو Windows iOS Bridge (المعروف أيضًا باسم Project Islandwood) هو تطبيق UWP أيضًا.
للحصول على مزيد من التقنية ، من الأفضل التفكير في تطبيق Windows Bridge على أنه تطبيق مختلط. على سبيل المثال ، يعد Adobe Photoshop Elements 15 وتطبيقات Spotify الجديدة تطبيقات Win32 لسطح المكتب الكلاسيكية ملفوفة حرفيًا في حاوية ملفات UWP appx.
إذا لم تكن مطورًا ، فربما يكون هذا محيرًا.
لا يقتصر الأمر على الغلاف أو المثبت فقط على جعله UWP ، بل إنه أيضًا كيف يمكن لتطبيق Desktop Bridge الاستفادة من ميزات Windows 10 فقط مثل:
- كورتانا.
- البلاط الحية.
- مركز العمل والإخطار.
- أهداف حصة.
- مهام خلفية UWP.
- تجربة مستخدم UWP XAML.
- خدمات تطبيقات UWP على سبيل المثال سحابة ، ذكاء اصطناعي ، ومعرفي.
- التحديثات التلقائية والترخيص وعمليات الشراء داخل التطبيق وجميع ميزات متجر Windows.
لذلك ، فإن تطبيقات جسر سطح المكتب هي في الحقيقة تطبيقات هجينة من نوع UWP. ومع ذلك ، بالنسبة إلى نظام التشغيل ، فهي مجرد UWP نظرًا لأن تلك الميزات هي الأبرز.
تطبيقات Desktop Bridge هذه أيضًا تصرف مثل تطبيقات UWP 'الأصلية' غير المختلطة. لا يقومون بتعديل سجل النظام ويتم وضع الحماية بشكل أساسي من نظام التشغيل لضمان إلغاء التثبيت بنقرة واحدة مع عدم وجود ملفات DLL المعزولة في دليل نظام Windows.
قد يكون من الأسهل التفكير في الأمر على أنه شريط تمرير. على اليسار ، لديك تطبيقات Win32 تستخدم واحدة أو اثنتين من واجهات برمجة تطبيقات UWP ، وعلى اليمين ، لديك تطبيقات لا تستخدم سوى واجهات برمجة تطبيقات UWP. التطبيق الذي يستخدم واجهات برمجة تطبيقات UWP فقط ، يمكن تشغيل تطبيقات 'UWP الحقيقية' عبر إصدارات مختلفة من Windows 10 بقاعدة شفرة واحدة فقط.
من المحتمل أن يكون التطبيق الذي يستخدم واحدًا أو اثنين من واجهات برمجة تطبيقات UWP هو تطبيق Win32 الذي ينقر على ميزات ووظائف UWP. يمكن للمطور تحويل تطبيقه ببطء إلى تطبيق UWP حقيقي بمرور الوقت إذا رغب في ذلك ، والتحرك ببطء من اليسار إلى اليمين على شريط التمرير التخيلي 'UWP'.
حالة غريبة سبوتيفي و UWPness
عند الحديث عن Microsoft UWP ، فإن مثال Spotify هو مثال رائع لتسليط الضوء على الخيارات الغريبة التي يمكن أن تتخذها الشركات من خلال تطبيقاتها.
هناك أربعة تطبيقات Spotify من نوع Windows تقنيًا:
- برنامج تثبيت Spotify Win32 .exe.
- Spotify لنظام Windows Phone 8.1.
- Spotify لنظام التشغيل Windows 10 (UWP).
- Spotify لأجهزة Xbox One (UWP).
الأخيران هما الأحدث وهما UWP على الرغم من اختلافهما إلى حد كبير. تطبيق Spotify لنظام التشغيل Windows 10 هو مجرد إصدار Win32 .exe لسطح المكتب المعاد تجميعه باستخدام جسر سطح المكتب. ومع ذلك ، كما هو مذكور أعلاه ، لا تزال تطبيقات الجسر تعتبر UWP.
تطبيق Xbox One Spotify الجديد هو أيضًا UWP. لقد استاء البعض من المصطلح نظرًا لأن هذا التطبيق غير متاح لأجهزة الكمبيوتر التي تعمل بنظام Windows 10 أو الهاتف المحمول (على الرغم من أنه ، من الناحية الفنية ، يمكنك تحميله جانبيًا إذا تم التوقيع عليه).
يختلف Spotify على Xbox One تمامًا عن أي شيء آخر ولكن لا يزال UWP.
فلماذا أنشأت Spotify العديد من التطبيقات بدلاً من تطبيق UWP 'أصلي' واحد يمكن تشغيله على الهاتف المحمول والكمبيوتر الشخصي و Xbox؟
ليس لدي فكره.
لكن لا يهم. تدور منصة UWP وجسورها حول منح المطورين طرقًا مختلفة إلى مكان واحد: متجر Windows. كيف يصلون إلى هناك ، أو عدد إصدارات التطبيق الموجودة ، غير مهم. سوف مايكروسوفت تفضل على المطورين فقط استخدام نفس الكود مع تطبيق واحد ، لكن الشركة لا تملي مثل هذه الممارسة. في النهاية ، الأمر متروك للمطورين لاختيار أفضل طريق.
في الوقت الحالي ، يعتبر Spotify أن تطبيق جسر سطح المكتب لأجهزة الكمبيوتر التي تعمل بنظام Windows 10 هو أفضل طريقة للوصول إلى متجر Windows بينما يعد تطبيق Xbox One المنفصل هو الحل الأفضل لهذا النظام الأساسي.
UWP هو التقدم في العمل
لم يتم الانتهاء من UWP ، ولن يكون كذلك للمطورين. UWP هو مستقبل تطوير تطبيقات Windows 10 والذي - يومًا ما - سيحل محل Win32. ومع ذلك ، فإن Win32 موجود منذ 20 عامًا ، ولا يمكنك إعادة إنشاء نظام أساسي للمطورين في غضون عام.
بعض ألعاب UWP في متجر Windows.
النقطة هنا هي أن UWP كما هي أبعد ما يكون عن الكمال أو ميزة كاملة. هناك حاجة إلى الآلاف من واجهات برمجة التطبيقات لربط مكالمات وميزات تطبيق Win32 بعالم UWP الأصلي. تعطي Microsoft الأولوية حيثما أمكن ذلك ، لكنها مثل مستشفى زمن الحرب حيث يكون فرز المرضى أمرًا ضروريًا.
أحد أسباب عدم قيام بعض الشركات بوضع تطبيقاتها في متجر Windows - حتى مع وجود جسر سطح المكتب - هو أن أدوات اليوم لا تجعل ذلك ممكنًا. إذا كان تطبيقك يستخدم واجهة برمجة تطبيقات مخصصة أو إجراء مكالمة نظام غريبة لا يدعمها UWP بعد ، حسنًا ، لا يعمل جسر سطح المكتب.
أي شئ في متجر Windows هو UWP
في الوقت الحالي ، التعريف الوحيد الذي يحتاجه مراقبو Microsoft و Windows لـ UWP هو: إذا كان التطبيق موجودًا في متجر Windows ، فهو من الناحية الفنية UWP. إذا أردت للحصول على معلومات محددة :
يقدم Windows 10 UWP ، والذي يوفر نظامًا أساسيًا مشتركًا للتطبيقات متاحًا على كل جهاز يعمل بنظام Windows 10. يوفر UWP واجهة برمجة تطبيقات أساسية مضمونة عبر الأجهزة. هذا يعني أنه يمكنك إنشاء حزمة تطبيق واحدة يمكن تثبيتها على مجموعة واسعة من الأجهزة. وباستخدام حزمة التطبيق الفردية هذه ، يوفر متجر Windows قناة توزيع موحدة للوصول إلى جميع أنواع الأجهزة التي يمكن تشغيل التطبيق عليها. يمكن للتطبيقات التي تستهدف UWP أن تستدعي ليس فقط واجهات برمجة تطبيقات WinRT المشتركة لجميع الأجهزة ولكن أيضًا واجهات برمجة التطبيقات (بما في ذلك Win32 و .NET APIs) الخاصة بفئة الجهاز الذي يعمل عليه التطبيق.
في حين أن نية Microsoft هي تشغيل UWP عبر أنواع من الأجهزة ، إلا أنه ليس كل شيء موجودًا حتى الآن ، ولا تجبر Microsoft الشركات على هذا المسار.
إذا كان التطبيق أو اللعبة هنا فهو UWP.
يرجع الالتباس هنا أيضًا إلى Microsoft ، التي لديها تاريخ رديء من مخططات التسمية. يواجه العديد من المطورين وحتى الأشخاص في Microsoft صعوبة في تحديد ما هو UWP وما هو ليس كذلك.
يمكنني أيضًا إضافة تحذير مفاده أن مواقع الويب يمكنها استضافة ملفات UWP appx تقنيًا ، والتي ستظل تجعلها UWP حتى لو لم تكن في المتجر. على الرغم من ندرتها ، فإن هذه التطبيقات والتطبيقات التي تستهدف Windows Phone 8.x فقط هي الاستثناءات لقاعدة Windows Store.
ليس لدى المستهلكين المنتظمين أي فكرة عما تعنيه UWP أو من المفترض أن تعنيه ، ولا ينبغي لهم ذلك. تهدف تجربة العميل إلى أن تكون بسيطة. قم بتشغيل جهاز Windows 10 ، وانتقل إلى متجر Windows ، وابحث عن التطبيق ، وابحث عنه ، وقم بتثبيته. كيف وصل التطبيق إلى هناك ، أو ما إذا كان من الناحية الفنية تطبيق Electron أو React Native أو أنه يستفيد من حاوية UWP JavaScript ، غير مهم تمامًا.
تحاول Microsoft جاهدة أن تجعل متجر Windows والتطبيقات الموجودة فيه عالمية للجهاز ، لكنها ليست موجودة بعد. UWP هي رحلة لشركة Microsoft وقد بدأت للتو ولكن جميع المسارات تؤدي في النهاية إلى وجهة واحدة: متجر Windows.
مزيد من القراءة حول UWP
في ما يلي بعض الغطس العميق ومقالات المناقشة حول Windows 10 و UWP ومستقبل النظام الأساسي:
- هل يمكن تشغيل تطبيقات Project Centennial على Windows 10 Mobile (والإجابة على أسئلة أخرى)
- لماذا يعتبر Windows 10 S و Project Centennial أمرًا بالغ الأهمية لنجاح Continuum
- قد تركز Microsoft على أجهزة سطح المكتب مع UWP - إليك سبب الاهتمام
- إذا لم تكن هناك هواتف ، فستحتاج Microsoft إلى فئة جهاز أخرى لضمان نجاح Windows UWP
- كيفية تحويل تطبيقات سطح المكتب إلى تطبيقات Universal Windows Platform باستخدام جسر سطح المكتب
- لا تفتح Microsoft Xbox One لجميع ألعاب UWP ... ولكن هل يجب ذلك؟