مع تحسين أداء المتصفح والاعتماد الثابت لواجهة برمجة HTML5 الجديدة ، يزداد حجم JavaScript على صفحات الويب تدريجياً. ومع ذلك ، فإن البرنامج المكتوب بشكل سيء لديه القدرة على كسر موقع الويب بأكمله ، وإحباط المستخدمين وإبعاد العملاء المحتملين.
يجب على المطورين استخدام جميع الأدوات والتقنيات التي يمكنهم استخدامها لتحسين جودة التعليمات البرمجية الخاصة بهم وأن يكونوا واثقين من أن كل تنفيذ يمكن التنبؤ به. هذا موضوع عميق في قلبي وقد عملت لسنوات للعثور على مجموعة من الخطوات التي يجب متابعتها أثناء عملية التطوير لضمان أنه يمكن نشر أعلى رمز فقط.
ما عليك سوى اتباع هذه الخطوات السبع لتحسين جودة مشروع JavaScript الخاص بك بشكل كبير. من خلال سير العمل هذا ، سيتم تقليل الأخطاء وسيتم إجراء العديد من تحسينات المعالجة ، مما يمنح المستخدمين تجربة تصفح ممتعة.
01. الكود
أولاً ، استدعاء الوضع الصارم لـ ECMASCRIPT5 وإعلان "الوضع الصارم" في وظيفتك ، واستخدم وضع تصميم هذه الوحدة. في إغلاق وظيفة التنفيذ الذاتي ، يجب تقليل استخدام المتغيرات العالمية من خلال وحدة الرمز المستقل صندوق الرمل ، ومن خلال أي تبعيات خارجية للحفاظ على الوحدة النمطية المتغيرة العالمية واضحة وموجزة. استخدم فقط مكتبة وأطر من طرف ثالث راسخ ومثبت جيدًا ومجهز جيدًا ، والحفاظ على وظائفك بقيمة صغيرة ، وفصل أي منطق عمل أو بيانات من عمليات الوحدة النمطية ورمز طبقة العرض الأخرى.
يجب أن تتبع مشاريع أكبر مع العديد من المطورين مجموعة من مبادئ الترميز المعمول بها ، مثل دليل أسلوب JavaScript من Google ، وتتطلب قواعد إدارة رمز أقوى ، بما في ذلك إدارة التبعية الصارمة من خلال مكتبة مثل المتطلبات ، وذلك باستخدام إدارة الحزم باستخدام تعريفات الوحدة غير المتزامنة (AMD) ، وذلك باستخدام إدارة الحزمة باستخدام أداة إدارة العميل (أدوات مكتبة العميل) إلى الإشارات المحددة من ملفات التبعية الخاصة بك. التواصل المزدوج بين وحدات الكود المختلفة. هذه أيضًا فكرة حكيمة: استخدم نظام مستودع نظام الكود ، مثل GIT أو Subversion ، للحصول على دعم رمزك في السحابة من خلال بعض الخدمات مثل التعليمات البرمجية المصدر أو الفاصوليا السحرية ، وتوفير القدرة على الاستعادة إلى الإصدارات السابقة ، وإنشاء فرع من التعليمات البرمجية لمشاريع أكثر تقدماً لأداء وظائف مختلفة ، دمجها معًا قبل إكمالها.
02. ملف
استخدم تنسيقات كتلة التعليقات التوضيحية المهيكلة مثل Yuidoc أو JSDOC لوظيفة الملف ، بحيث يمكن لأي مطور أن يفهم غرضه دون دراسة التعليمات البرمجية الخاصة به ، والتي يمكن أن تقلل من سوء الفهم. يمكن أن يكون لاستخدام بناء جملة Markdown تعليقات وتفسيرات طويلة أكثر ثراءً. استخدم أداة سطر الأوامر المرتبطة بها لإنشاء مستند على موقع الويب تلقائيًا: استنادًا إلى هذه الآراء الهيكلية ، فهي تتفق مع أي تعديلات تم إجراؤها في الكود الخاص بك.
03. تحليل المسار
قم بتشغيل أداة تحليل التعليمات البرمجية الثابتة على الكود الخاص بك بانتظام ، مثل JShint أو JSLINT. هذه الفحص على عيوب الترميز المعروفة والأخطاء المحتملة ، مثل نسيان استخدام أنماط صارمة أو الرجوع إلى المتغيرات غير المعلنة ، والأقواس المفقودة أو المنقص. تصحيح أي مشاكل مع عناصر التحكم في الأدوات لتحسين جودة الكود الخاص بك. حاول تعيين الخيارات الافتراضية لفريق المشروع الخاص بك لتعزيز معايير الترميز مثل المسافة البادئة لكل سطر عن طريق المساحات ، حيث تضع أقواس مجعد ، واستخدام علامات اقتباس واحدة أو مزدوجة عبر ملف الرمز.
04. اختبار
يعد اختبار الوحدة إحدى الوظائف التي يتم تنفيذها بواسطة وظيفة مستقلة صغيرة: قم بتنفيذ إحدى الوظائف من قاعدة الكود الرئيسية لإدخالك المحدد لتأكيد أنه يخرج قيمة متوقعة. لزيادة ثقتك بنفسك ، ستقوم الكود بكتابة الأطر المستخدمة كما هو متوقع ، مثل الياسمين أو QUNIT لكل اختبار وحدة وظيفية ، باستخدام معلمات الإدخال المتوقعة وغير المتوقعة. لكن لا تنسى تلك المواقف الحافة!
قم بتشغيل هذه الاختبارات على متصفحات متعددة عبر أنظمة تشغيل متعددة ، مما يتيح لك تسريع الاختبارات على الأجهزة الافتراضية في السحابة في مطالبك من خلال الاستفادة من هذه الخدمة ، مثل Browserstack أو Sauce Labs. توفر هاتان الخدمتان واجهة برمجة تطبيقات تتيح إجراء اختبارات وحدتك تلقائيًا على متصفحات متعددة في نفس الوقت ، وبمجرد الانتهاء منها ، سيقومان بإعادة النتائج إليك. كمكافأة ، إذا تم تخزين الرمز الخاص بك على Github ، فيمكنك أخذ BrowsersWarm ، وهي أداة تقوم تلقائيًا بتشغيل اختبارات الوحدة الخاصة بك عند إرسال الرمز الخاص بك.
05. القياس
أدوات تغطية الكود مثل Istanbul قياس خطوط الكود التي يتم تنفيذها عند تشغيل اختبار الوحدة الخاص بك على وظيفتك ، والإبلاغ عنها كنسبة مئوية من إجمالي عدد خطوط التعليمات البرمجية. يمكن تشغيل أداة تغطية الرمز في اختبارات وحدتك وإضافة اختبارات إضافية إلى زيادة درجة التغطية الخاصة بك إلى 100 ٪ ، مما يمنحك ثقة أكبر في الرمز الخاص بك.
يمكن قياس تعقيد الوظيفة باستخدام مقياس تعقيد Hallstead: المعادلة التي أنشأها عالم الكمبيوتر موريس هالستيد في السبعينيات. يتم قياس تعقيد الوظيفة بناءً على الحلقات والفروع والوظيفة التي تحتوي عليها: يمكن قياس تعقيد الوظيفة باستخدام مقاييس التعقيد من Halstead. عندما تنخفض هذه النتيجة المعقدة ، كلما كان من الأسهل فهم هذه الوظيفة والحفاظ عليها ، مما يقلل من إمكانية وجود أخطاء. يساعد تصور البيانات التي تم إنشاؤها في مقاييس أدوات سطر الأوامر والتعقيد في رمز JavaScript على تحديد الوظائف التي يمكن تحسينها مع تخزين النتائج السابقة ، مما يتيح تتبع تحسينات الجودة بمرور الوقت.
06. الأتمتة
استخدم المتسابقين في المهام مثل Grunt لتشغيل عملية تجميع الملفات تلقائيًا والتحليل والاختبار والتغطية والتقارير التعقيد ، مما يوفر لك الوقت والجهد ويزيد من فرصك في حل أي مشكلات جودة تنشأ. ترتبط معظم الأدوات وأطر الاختبار المميزة في هذا المنشور بـ Grunt ، والتي يمكن أن تساعدك على تحسين جودة سير العمل والرمز دون الحاجة إلى تحريك إصبع.
07. التعامل مع الاستثناءات
في الوقت نفسه ، في مرحلة ما ، سيكون لخطأ رمزك عند تشغيله. استخدم عبارة "Try ... Catch" للتعامل بشكل صحيح مع أخطاء وقت التشغيل وتأثير الحد من السلوك على موقع الويب الخاص بك. استخدم خدمة شبكة لتسجيل الأخطاء التي تحدث أثناء التشغيل. واستخدم هذه المعلومات لإضافة اختبارات وحدة جديدة لتحسين التعليمات البرمجية الخاصة بك والتخلص من هذه الأخطاء واحدة تلو الأخرى.
خطوات للنجاح
تساعدني هذه الخطوات السبع في إنشاء بعض الكود الذي أفتخر به في حياتي المهنية حتى الآن. هم أيضا أساس جيد للمستقبل. في مشروعك الخاص ، نعد باستخدام هذه الخطوات لإنتاج رمز JavaScript عالي الجودة ، حتى نتمكن من العمل معًا لتحسين الشبكة والإيفاء إلى النجاح خطوة بخطوة.