رغم أنّ شركة مايكروسوفت ليست هي الشركة التي أوجدت تقنيّات HTML/JavaScript/CSS إلّا أنّه وبعد الحضور العالميّ القويّ لهذه التقنيّات الثلاث بدأت مايكروسوفت بمنح شهادة حول هذه التقنيّات عن طريق الامتحان 480-70 الذي طرح للمرّة الأولى عام 2012.
مهما كانت خبرتك في هذه التقنيّات فأنت بحاجة إلى إثباتها أمّام أيّ شركة أو جهة تطمح بالعمل لديها. ولن تجد أفضل من شهادة صادرة عن شركة مرموقة مثل مايكروسوفت كي تثبت هذه الخبرة. هذا لا يعني بالطبع أنّه لا توجد جهات أخرى يمكن الحصول منها على شبيه بمثل هذه الشهادة، فموقع w3schools الشهير يمنح شهادات منفصلة لتقنيّات HTML و JavaScript و CSS كل ّعلى حدة. ولكن بالتأكيد فإنّ شهادة من شركة مثل مايكروسوفت تبقى أكبر تأثيرًا في سوق العمل.
نبذة عن الامتحان
يقيس هذا الامتحان مهاراتك كمطوّر في استخدام هذه التقنيّات الثلاث والمزج بينها بشكل صحيح وسليم. حيث أنّ هناك أربعة مجالات رئيسيّة يغطيها الامتحان. تنصح مايكروسوفت أن يتقدّم للامتحان كلّ مطوّر له خبرة برمجيّة عمرها عامين أو عام واحد في مجال الأعمال باستخدام هذه التقنيّات. يكلّف الامتحان حاليًّا مبلغًا وقدره 150 دولارًا أمريكيًّا ويمكنك أن تحجز لإجراء هذا الامتحان عن طريق الإنترنت وذلك في أيّ مركز معتمد من مايكروسوفت.
يمكنك مراجعة الصفحة الرسميّة للامتحان. يجري الامتحان ضمن المركز المعتمد في توقيت مُحدّد تلتزم به. تكون القاعة التي سيجري فيها الامتحان مراقبة، وبعد أن يقوم الموظّف المختص بتحميل أسئلة الامتحان على الحاسوب يبدأ التوقيت.
من الضروري التنبّه إلى أنّ النقاط الواردة في هذا المقال لا تمثّل بالضرورة المصدر الوحيد لأسئلة الامتحان، ويجب الانتباه أيضًا إلى وجود بعض المواقع التي تزوّدك بأسئلة مسرّبة لامتحانات سابقة مع الحلول لهذه الأسئلة، وفي الغالب تكون مدفوعة وليست مجّانيّة. المشكلة هنا (بصرف النظر عن كونها مسألة غير قانونيّة) في أنّه قد تكون هذه الأسئلة غير صحيحة بمعنى أنّ مصدرها ليس امتحانات مايكروسوفت، وهناك احتمال أن يكون مصدرها امتحانات مايكروسوفت بالفعل ولكن قد تكون الإجابات المقترحة لها خاطئة، وفي جميع الأحوال لا تستطيع أن تضمن أن تتكرّر هذه الأسئلة في امتحانات قادمة.
ومن الجدير ذكره أنّ هذا الامتحان يدخل ضمن متطلّبات الحصول على عدّة شهادات تمنحها مايكروسوفت أيضًا (تتطلّب كلّ شهادة عادةً النجاح في أكثر من امتحان)، فهو يدخل مثلًا ضمن شهادة مايكروسوفت في تطوير تطبيقات شير بوينت.
على ماذا سأحصل بعد النجاح في الامتحان؟
بعد النجاح في الامتحان ستحصل على وثيقة نجاح موقّعة من المدير التنفيذي لمايكروسوفت تحمل اسمك، واسم الامتحان الذي اجتزته بدون ذكر المعدّل الّذي حصلت عليه. وهناك شكلان لهذه الوثيقة: إلكترونيّ مجّاني، ومطبوع غير مجّاني. يمكن تحميل النسخة الإلكترونيّة من موقع تابع لمايكروسوفت مخصّص لهذا الغرض، كما يمكنك طلب النسخة المطبوعة من هذه الشهادة لتصلك بالبريد لقاء رسمٍ رمزيّ. الملفت في الموضوع أنّ مايكروسوفت تسمح لك بمشاركة النسخة الإلكترونيّة مع أيّ جهة عن طريق رابط مخصّص لهذا الغرض، مما يسمح لك بإثبات امتلاكك لهذه الوثيقة بيسر وموثوقيّة عاليّة. فعلى سبيل المثال لا الحصر، يتطلّب موقع upwork.com للعمل المستقل الشهير مثل هذا الإثبات، في حال صرّحت حول امتلاكك لمثل هذه الشهادات.
المجالات الرئيسيّة لأسئلة الامتحان
فيما يلي المجالات الرئيسيّة للامتحان، والنسبة المئويّة لمساهمة كلّ منها في أسئلة الامتحان:
- بناء ومعالجة بنى وكائنات مستند HTML5 بنسبة (24%)
- التعامل مع سير البرنامج (25%)
- الوصول إلى البيانات والتوثّق منها (26%)
- استخدام CSS3 في تنسيق التطبيقات (25%)
1. بناء ومعالجة بنى وكائنات مستند HTML5
ستحتاج في هذا المجال إلى الفهم الجيّد والصحيح لإنشاء البنية العامة للمستند عن طريق هيكلة واجهة المستخدم باستخدام الرماز الدّلالي semantic markup للدلالة على المحتوى المناسب لمحرّكات البحث، ومراعاة قارئات الشّاشات، وكتابة شيفرة تتفاعل مع عناصر واجهة المستخدم من خلال إضافة وتعديل وتطبيق التنسيق على عناصر HTML برمجيًّا.
كما سيكون من الضروري التعامل مع واجهة برمجة التطبيقات API الخاصّة بـ HTML5 وذلك عن طريق التعامل مع التخزين المحلّي local storage، والتعامل مع ذاكرة التطبيق AppCache في HTML5، والتعامل مع الموقع الجغرافي Geoloctaion.
2. التعامل مع سير البرنامج
ستحتاج في هذا المجال إلى الفهم الجيّد لكيفيّة إدارة سير البرنامج عن طريق التعامل مع المجموعات collections وعناصر المصفوفات arrays، وإدارة بنى القرار في البرنامج، وتقييم (حساب) التعابير expressions. كما ستحتاج إلى التعامل مع قدح fired ومعالجة الأحداث من خلال معالجة الأحداث الشائعة التي يصدرها DOM في HTML5، والتصريح عن الأحداث الفقاعيّة bubbled events ومعالجتها، ومعالجة حدث باستخدام الدوال عديمة الاسم anonymous functions.
ستحتاج أيضًا إلى معالجة الأخطاء من خلال الاستجابة إلى أكواد الأخطاء وضبطها، ورمي استثناء exception، واختبار الحالة null، وتطبيق آلية معالجة الخطأ باستخدام try-catch-finally. وأيضًا إلى التعامل مع الردود callbacks، واستخدام المكتبة jQuery في إجراء طلبات AJAX، وربط حدث مع معالج حدث، وإنشاء رد callback باستخدام الدوال عديمة الاسم anonymous functions.
وهناك جانب مهمّ قد لا يكون مشهورًا بالقدر الكافي، وهو التعامل مع عمليّة ويب web worker والتي تتضمّن تشغيل وإيقاف عملية ويب web worker، وتمرير بيانات إليها، وضبط إعدادات timeouts وintervals لها، وفهم محدوديّتها.
3. الوصول إلى البيانات والتوثق منها
يُعتبر هذا المجال مألوفًا نسبيًّا، ففيه تحتاج أن تكون ملمًّا بكيفيّة التحقّق من صحة مُدخلات المستخدِم والتعامل مع أنماط الإدخال المتنوّعة، وتقييم تعبير نظامي regular expression للتحقّق من مدخلات المستخدم، والتحقّق من الحصول على النوع الصحيح من البيانات باستخدام الدوال المضمّنة built-in، بالإضافة إلى منع عمليّة حقن الشيفرة code injection التي يلجأ إليها المخترقون.
ستحتاج أيضًا إلى الحصول على بيانات بصيغة JSON وXML، وتحميل البيانات من مصادرها باستخدام الكائن XMLHTTPRequest، وسَلْسَلَة serialize البيانات، وإعادة تجميعها deserialize، والتعامل مع البيانات الثنائيّة binary data، والتعامل مع دالّة السَلْسَلَة المسمّاة serialize في jQuery.
4. استخدام CSS3 في تنسيق التطبيقات
ينبغي في هذا المجال أن تكون ملمًّا في تنسيق خصائص النص في HTML والتنسيقات الخاصّة بالإظهار (مثل الحجم والحدود والزوايا المستديرة والهامش margin)، وتطبيق تنسيقات لإحداث تأثيرات رسوميّة (مثل الشفافيّة transparency والإعتام opacity وصورة الخلفيّة والتدّرجات gradient)، وأيضًا تطبيق تنسيقات لتغيير موضع العنصر.
وتحتاج أيضًا إلى معرفة كيفيّة إنشاء تخطيط مرن للصفحة باستخدام نموذج الصندوق box model، ونموذج الأعمدة المتعدّدة، ونموذج الشبكة grid model، ونموذج المناطق regions model، وإنشاء واجهة مستخدم متحرّكة ومتكيّفة، وتطبيق تحويلات ثنائيّة وثلاثيّة الأبعاد، وضبط واجهة المستخدم عن طريق استعلامات الوسائط media queries.
أفضل التعليقات
لا توجد أية تعليقات بعد
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.