اهلاً،

مطوري تطبيقات ويندوز في إسبوع – #3.
في هذا الإسبوع من سلسلة “مطوري تطبيقات ويندوز في أسبوع” لا يوجد الكثير من الأخبار لأذكرها.. وإذا أردت ان اكون أكثر شفافية وواقعية معكم .. لا يوجد أخبار !
ولذلك، سابدأ ببعض النصائح والـ Tips الجميلة!

  • Developer Assistant
    إضافة جميلة جداً للفيجوال ستوديو مع خصائص عديدة وكثيرة، وسأذكر لكم أهمها:

    • – إستعراض مباشر للكود كمثال عن الـ API الذي تقوم بكتابته.
      مثلاً، أنت الآن تكتب كود لإظهار رسالة للمستخدم، بدلاً عن إظهار الـ API Guide & Overloads فقط.. سيتم إظهار عينة (مثال) عن كيفية إضافة رسالة للمستخدم.
    • – توفر لك محرك بحث جبار بداخل الفيجوال ستوديو لتقوم بالبحث ضمن آلاف الأسطر من الأكواد والأمثلة من MSDN و Github.. بحث عبر الـ API Name او سؤال .. مثلاً: How do I parse JSON .
      الجدير بالذكر أن هذه الأداة ايضاً تبحث ضمن الأكواد والمشاريع المحلية التي تملكها أنت في جهازك، وهو شيء رهييب!
    • – توفر لك هذه الإضافة مساعدة إضافية بإكتشاف وتصحيح الأخطاء والمشاكل التي تواجهها بالكود.
      من الأشياء الجميلة التي توفرها الإضافة هي إمكانية البحث عن المشكلة عبر Bing من داخل الفيجوال ستوديو بدون الحاجة لكتابة او نسخ لصق الخطأ ضمن متصفح الإنترنت.. فهي توفر خيار Bing Contextual Search الرائع!

الكثير من الميزات أيضاً، أترككم لإستكشافها عبر معرض فيجوال ستوديو للإضافات: Visual Studio Gallery – Developer Assistant

  • راقب أداء تطبيقك وتأكد من عدم هدر موارد الجهاز..
    إسبوع كامل أقوم كل يوم بتغيير عدد من الأسطر وانقلها لمكان آخر، قمت تغيير كامل هيكلة التطبيق، أصلحت أشياء لم يكن لها أي وجود.. راقبت تصرفات التطبيق بشكل عميق، قمت بأتمتة بعض الإختبارات يدوياً بدون الإعتماد على Test Unit ..
    ولم أستطع حل المشكلة.. وهي أن التطبيق يقوم بالإغلاق بدون سبب، بدون أي Exception ولا يحترم أي Debugging .. حسناً بعد أسبوع، توصلت إلى ان التطبيق يقوم بإستهلاك الرام بشكل هائل، والجهاز يقوم بإنهائه بشكل فوري .. قمت بحل المشكلة وقراءة العديد من المواضيع المتعلقة بآداء التطبيقات وفعاليتها.. ولكن العديد من الأشياء تغيّرت وتطورت بويندوز 10، لذلك أنصح وبشكل هائل قراءة هذا الموضوع من مدوّنة مايكروسوفت الرسمية للمطورين: blogs.windows / Building Windows – App Performance

هذه كانت نصائح و Tips هذا العدد.. لننتقل الآن لـ How-To!

قبل البداية لهذا الإسبوع، لم أنسى توفير مشروع كورتانا والذي وعدتكم به الإسبوع الفائت.. يمكنك تحميل المصدر عبر OneDrive – HolyCortana Project (تخطى الإسم 😀 ) .

في هذا الإسبوع سأتكلم عن التواصل ما بين تطبيقات ويندوز 10.. cross-app communication
مع ويندوز 10 قامت مايكروسوفت بإضافة العديد والعديد من الطرق والـ APIs الجديدة والتي تمكننا من تطوير تطبيقات تتواصل مع بعضها البعض ضمن جهاز واحد..
ومن أبرز الميزات الجديدة:

  • – توفير ميزة “سحب وإفلات” drag-and-drop ضمن تطبيقات ويندوز الموّحدة:
    والتي كانت موجودة بتطبيقات سطح المكتب التقليدية Win32 .. الآن أصبحت مدعومة بشكل أصيل مع ويندوز 10 .
  • – تشغيل او فتح تطبيق معين عبر “إسم الحزمة” فقط، بدون حتى أن يكون التطبيق الهدف يدعم التشغيل عبر التطبيقات أو لا، بمعنى آخر.. لا يجب على التطبيق الهدف أن يكون أعلم ويندوز بوجود بروتوكول خاص لتشغيله، وإنما يتم التشغيل بإسم حزمة التطبيق الفريدة..ونعم، تستطيع إرسال تعليمات او parameters.. وهذا شيء رائع!
  • – إمكانية مشاركة الملفات بين التطبيقات:
    أصبح الأن بإمكانك مشاركة ملف من داخل المخزن الداخلي الخاص بك، عبر مشاركة “مفتاح” او “token” من خلاله يقوم التطبيق الهدف من الوصول لمخزون تطبيقك الخاص والحصول فقط على الملف الذي تم مشاركته.
  • – تشغيل او فتح تطبيق والعودة بمعلومات:
    الميزة التي أفضلّها.. وهي تمكنك من توفير تطبيق يمكن الوصول إليه لفعل شيء محدد والحصول على نتيجة والرجوع بهذه النتيجة.. من الأمثلة الشائعة تطبيق تويتر وتطبيق يريد الوصول لحسابك بتويتر:
    يقوم التطبيق بإرسال طلب لتطبيق تويتر بإنه يريد وصول لحساب المستخدم، تظهر واجهة المستخدم لتويتر سائلة المستخدم بأن التطبيق a يريد الوصول لحسابك، بعد الموافقة من المستخدم يعود تطبيق تويتر لفتح التطبيق a حاملاً معه بيانات الوصول ومفاتيح المستخدم.. جميل!
    مثال آخرـ تطبيق متجر إلكتروني، ويمكنك التأكد من ما إن قام المستخدم بالشراء او لا.. إلخ من السيناريوهات الممتعة .
  • – طلب مشاركة معلومات مع من التطبيقات الأخرى بدون تشغيلها:
    ميزة رائعة توفر ما ذكرته سابقاً، ولكن بدون علم المستخدم- بالخلفية تقوم التطبيقات بطلب ومشاركة المعلومات والبيانات بدون أي إذن من المستخدم او معرفته بذلك (طبعاً، المستخدم هو من أعطى الإذن بالتشغيل بالخلفية أصلاً ).. من السيناريوهات البسيطة:
    تطبيق يوفر عمليات حسابية، تقوم التطبيقات الأخرى بإرسال طلبات لحل مسائل رياضية، ويقوم التطبيق الخدمة بحلها والرجوع بالحل..

للأسف لن أوّفر مثال لهذا ولكن مايكروسوفت فعلت!
يمكن الوصول لهذه التدوينة وقراءة التفاصيل كاملاً مع العديد من الأمثلة المفتوحة المصدر: blogs.windows/ Building Windows – Cross-App Communication

بالنسبة للمصادر والمراجع لهذا الإسبوع، فإخترت لكم:

– Windows-universal-samples in Github
لن ابالغ، ولكن أفضل شيء تستطيع الحصول عليه خلال رحلتك في تطوير تطبيقات ويندوز 10.. كل المواضيع متوفرة هنا بشكل مثال مفتوح المصدر لتتمكن من تحميلها وتشغيلها مباشرةَ على جهازك.. شكراً مايكروسوفت!
github / Microsoft / Windows-universal-samples

– مقدمة لتطوير تطبيقات ويندوز 10 بالعربي – Channel9
أصبحنا نرى العديد من الفيديوهات والكورسات بالعربي بقناة مايكروسوفت للمطورين، القناة التاسعة.. وهذه المرة مع مقدمة لتطوير تطبيقات ويندوز 10 من مايكروسوفت 4 أفريقيا: Channel9 – Windows 10 Development بالعربي

– Rajen Kishna’s Blog
مدونة لطيفة قمت بزيارتها منذ فترة وتمتعت بقراءة بعض المواضيع عن ويندوز وتطوير تطبيقات ويندوز، يمكن زيارتها عبر: Rajen Kishan

كانت هذه المصادر التي أردت ان اشاركها معكم لهذا الإسبوع..

في جزء القيكس لهذا الأسبوع، الردود الـ 20 الأكثر إستخداماً من قبل المبرمج إذا لم يعمل الكود كما يجب:

am81m39_700b

via 9gag
بالنسبة لي، الرد رقم 5 😀

إلى هنا، وصلنا لنهاية النشرة لهذا الإسبوع – دائماً يمكنك التواصل معي لأي سؤال، إقتراح او نقد.. عبر تويتر او التعليقات.

هل تعتقد أنه بإمكان تحسين النشرة او السلسلة بشكل عام؟ يمكنك المشاركة بالنشرة القادمة سواءً بنصيحة، مصدر، مرجع او شيء ممتع مثير للسخرية.. أو ان تطلب شيء معين، دائماً، يمكن التواصل معي عبر القنوات السابقة.. او عبر البريدhttp://scr.im/mmgrt

أملي بلقاء آخر
محمد