اهلاً

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

 

في هذه التدوينة سأشرح كيفية نقل –ترقية- تطبيقك الذي يعمل بنظام الويندوز 8.1 او الويندوز فون 8.1 او نسخة 8.0 إلى ويندوز 10 .. وكيفية دعم كل الإمكانيات الجديدية للمطورين بهذا النظام والوصل للـ 120 مليون مستخدم الذي تكلمت عنهم سابقاً، والوصل لـ “المليار مستخدم خلال عامين – مايكروسوفت ” .

 

قبل البدء بالخطوات والطرق التي عليك إختيارها، ربما تحتاج قراءة هذه المقالة وهي عن منصة ويندوز الموّحدة .

ربما عليك قراءة هذه المقالة ايضاً وهي مدخل لتطوير تطبيقات ويندوز 10 .

http://mghzawi.com/windows-10-dev-journey/

هنالك عدة طرق لترقية تطبيقك الحالي ليعمل على ويندوز 10 ويستفيد من الـ APIs الحديثة التي تم إضافتها لهذا النظام .. والطريقة التي ستختارها تعتمد على نوع تطبيقك الحالي .

 

  • Windows Phone Silverlight C# & XAML

 

إذا كان التطبيق الذي تريد ترقيته طوّر بإستخدام تقنيات سيلفر-لايت “القديمة نسبياً”، فأنت أمام خيار ربما تجد بعض الصعوبة فيه .. ولكنه يستحق :-) .

 

التصميم : كما نعلم أن هنالك بعض العناصر المشتركة بين الـ Silverlight  و الـ WinRT بالنسبة للـ XAML ولكن أغلب الخصائص والعناصر الحديثة والتي تم إضافتها في نسخ الـ 8.1 أو الـ 10 لم تكن موجودة في الـ Silverlight ولذلك .. عليك إعادة تصميم تطبيقك بشكل “شبه كامل” ..

حتى لو لم تضطر لإعداة تصميم تطبيقك بشكل كامل، تصميم ويندوز 10 وتطبيقاته تحتلف عن سوابقها ويفضل إتباع إرشادات التصميم الجديدة !

وهنا تترك أمام عدة خيارات بالتصميم وهي تصميم تطبيق مستجيب “يتكيّف” على حسب شاشة المستخدم، وبذلك سيكون تطبيقك جاهز للعمل على “أنواع كثيرة من الأجهزة التي تستيطع تخيّلها” .. أو تصميم تطبيق يعمل على الهواتف فقط – او تصميم تطبيق يعمل على الـسيرفس-هب و الـ هولو-لينس .. لسبب ما D: .

[خطوة 1] : قم بتصميم التطبيق بشكل كامل داخل مشروع التطبيق بنسخة UWP .

الكود : بالنسبة للكود فأنت ستعيد كتابة بعض الأجزاء من الكود والتي تتعلق غالباً بالإتصال ببعض خدمات الإنترنت او إدارة المخزن الداخلي لتطبيقك او الإشعارات و التنبيهات .. ولكن لن تضطر لكتابة “المنطق” الخاص بك كله .. فقط ترقية بعض الأجزاء .. وأعني بالمنطق الخاص بك : الكود الذي يمثّل تطبيقك وخدماته .

[خطوة 2] : قم بنقل المنطق الخاص بك وترقية بعض الأجزاء التي تحنتاج لذلك، قم بكتابة الأكواد التي يتطلبها تطبيقك من جديد .

يمكنك الرجوع لهذه الصفحة دائماً لتجد الإختلافات بالـ Classess و الـ APIs بين الـ Silverlight و الـ UWP مباشرةً :) .
https://msdn.microsoft.com/en-us/library/windows/apps/mt188211.aspx
لمزيد من المعلومات والتفصيل، يمكن الدخول لهذه الصفحة و الإنتقال لـ In this section وقراءة بعض المعلومات والتفصيل عن عملية نقل وترقية تطبيق Windows Phone Silverlight لـ Universal Windows Platform .
https://msdn.microsoft.com/en-us/library/windows/apps/mt238323.aspx
 

  • Windows Phone 8.1 / Windows 8 / Windows 8.1 / Universal Windows 8.1 App [WinRT – C# & XAML]

 

عندما يتعلق الأمر بالـ WinRT بأي إصدار كان 8.0 او 8.1 .. فإنه من السهل “جداً” ترقية تطبيقك ليستفيد من الخصائص والخدمات الجديدة التي يوفرها ويندوز 10 ..

التصميم : لن يكون هنالك إختلافات كثيرة بالتصميم الخاص بك –تكاد ان تنعدم- ولن تضطر للتصميم من جديد –إلا إن أحببت- وكل ما عليك هو “نسخ التصميم”.. وكما هو الأمر مع Silverlight فأنت مخيّر تماماً لدعم أي حجم شاشة او مجموعة أجهزة .

[خطوة 1] : إنسخ التصميم من مشروع تطبيقك الـ 8.× لمشروع تطبيقك الـ UWP .

إذا كان تطبيقك الـ RT تطبيق موّحد، إنسخ التصميم الذي يلائم متطلباتك “موبايل أو كمبيوتر” ولكن إن كان الهدف نقل تطبيق موّحد لـ تطبيق UWP ويندوز 10، إنسخ التصميم الذي “يبدو أفضل” لتقوم بتحويله لتصميم مستجيب يتكيّف بحسب حجم الشاشة .

الكود : أيضاً لن تضطر لكتابة أي شيء من جديد –تقريباً- ، ربما عليك تعديل بعض الأجزاء من الكود لإضافة دعم بعض الميزات الخاصة بويندوز 10 كما هو الحال مع أي عملية ترقية :) .

[خطوة 2] : انسخ الكود وتأكد من دعمك لبعض الخصائص والميزات الخاصة بويندوز 10 .

إذا كان تطبيقك الـ RT تطبيق موّحد، فأنت ستقوم بنسخ ملفات الكود من المشروع المشترك Shared .

يمكنك دائماً إضافة مشروع الـ UWP لأي من مجلد المشاريع الخاثة بك Solution Folder عبر : File => Add new project .

لمزيد من المعلومات والتفصيل عن كيفية نقل وترقية تطبيقات الـ 8.x لـ UWP .. يمنكك دائماً الانتقال لهذه الصفحة وقراءة المزيد :

https://msdn.microsoft.com/en-us/library/windows/apps/mt238322.aspx

 

هذا كان موجز عن كيفية ترقية او نقل تطبيقك من نسخ سابقة من ويندوز إلى آخر نسخة وأفضلها .. ويندوز 10 .

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

دائماً يفضل أن تقوم بإعادة ترتيب وقراءة و”تنظيف” الكود بعد نقله او نسخه لتتأكد تماماً من فعاليته و عمله بالطريقة التي يجب ان يعمل بها .

كل ما ذكر في هذه المقالة يقصد به التطبيقات التي تعمل بالمعايير القياسية و “الشائعة” .. قد تضطر لكتابة تغيير نسخ او حذف اجزاء اكبر أقل من ما ذكر وكل هذا يعتمد على طبيعة تطبيقك .