يهدف مشروع Tide إلى التدقيق في ثيمات WordPress والمكونات الإضافية وتحديد نقاطها بناءً على جودة الكود

نشرت: 2017-11-23

في الأسبوع الماضي ، أسقط XWP معاينة مثيرة للاهتمام لمشروع جديد يسمى Tide يهدف إلى تحسين جودة الكود عبر مكون WordPress الإضافي والأنظمة البيئية للقوالب. تعمل الشركة بدعم من Google و Automattic و WP Engine على إنشاء خدمة جديدة من شأنها مساعدة المستخدمين على اتخاذ قرارات أفضل للمكونات الإضافية ومساعدة المطورين في كتابة تعليمات برمجية أفضل.

لخص مدير التسويق في شركة XWP ، روب ستينسون ، اتجاه المشروع حتى الآن:

Tide هي خدمة تتكون من API ، وخادم التدقيق ، وخادم المزامنة ، وتعمل جنبًا إلى جنب لتشغيل سلسلة من الاختبارات الآلية ضد البرنامج المساعد WordPress.org وأدلة السمات. من خلال البرنامج المساعد Tide ، يتم تسليم نتائج هذه الاختبارات كدرجة مجمعة في مسؤول WordPress والتي تمثل جودة الشفرة الإجمالية للمكوِّن الإضافي أو السمة. يتم إنشاء تقرير شامل ، يجهز المطورين لفهم أفضل لكيفية زيادة جودة التعليمات البرمجية الخاصة بهم.

تضمن إعلان XWP أيضًا لقطة شاشة لكيفية تقديم هذه البيانات في دليل البرنامج المساعد WordPress:

تخطط XWP للكشف عن الخدمة في WordCamp US في ناشفيل في كشك Google حيث ستدعو المجتمع للمشاركة. بطبيعة الحال ، فإن المشروع الذي يحتمل أن يكون له هذا التأثير الكبير على النظام البيئي للمكونات الإضافية يثير العديد من الأسئلة حول من يقف وراء الرؤية ونوع المقاييس التي سيتم استخدامها.

لقد تواصلت مع Rob Stinson و Luke Carbis في XWP ، وكلاهما من المساهمين في المشروع ، لإلقاء نظرة من الداخل على كيفية بدايته وأين يتوقعانه.

"بدأ Tide في XWP منذ حوالي 12 شهرًا عندما قام أحد فرق الخدمة لدينا بتجميع الفكرة ، متبوعة بإثبات لمفهوم الأداة التي نفذت سلسلة من اختبارات جودة الكود مقابل حزمة من التعليمات البرمجية (مكون WordPress الإضافي) و أعاد النتائج عبر واجهة برمجة التطبيقات ، "قال ستينسون. "توصلنا بعد فترة وجيزة إلى اسم Tide ، المستوحى من المثل القائل" ارتفاع المد يرفع جميع القوارب "، معتقدين أنه إذا كانت أداة مثل هذه يمكن أن تخفض حاجز الدخول إلى رمز عالي الجودة لعدد كافٍ من المطورين ، فيمكنها رفع الجودة من التعليمات البرمجية عبر نظام WordPress البيئي بالكامل. "

قال ستينسون إن XWP عززت جهودها في Tide خلال الأشهر القليلة الماضية بعد أن بدأت في رؤية إمكاناتها ومشاركة الرؤية مع الشركاء.

قال ستينسون: "لقد ساعدت كل من Google و Automattic و WP Engine في توفير الموارد (الأموال ، والبنية التحتية ، ووقت المطور ، والمشورة ، إلخ) للمشروع مؤخرًا أيضًا". "لقد ساعدنا دعمهم حقًا في بناء الزخم. كانت Google جزءًا كبيرًا من هذا منذ حوالي أغسطس. كنا نعمل معهم في مشاريع أخرى وعندما شاركناهم في رؤية Tide ، أحبوها ورأوا كيف تتماشى مع الرؤية التي لديهم من أجل شبكة ويب أفضل أداءً. "

خدمة Tide ليست نشطة حاليًا ولكن سيتم إطلاق إصدار تجريبي في WordCamp US مع مكون WordPress الإضافي لمتابعة بعد ذلك بوقت قصير. قال ستينسون إن الفريق صمم النسخة الأولى لتقديم إمكانيات تايد وتشجيع التعليقات والمساهمة من المجتمع.

قال: "نحن ندرك أن تايد سيكون أفضل ما لديه إذا كان مفتوح المصدر". "هناك العديد من الأجزاء المتحركة إليه ، ونحن ندرك أنه كلما زادت المدخلات من المجتمع ، كلما كان يمثل ويحل احتياجات المجتمع حول جودة الكود بشكل أفضل."

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

قال ستينسون: "تصنيف النجوم هو مجرد فكرة كنا نلعب بها". "سيكون الغرض منه تجميع التقرير الكامل الذي تم إنتاجه بواسطة Tide في مقياس بسيط وسهل الفهم يمكن لمستخدمي WordPress الرجوع إليه عند اتخاذ قرارات حول المكونات الإضافية والقوالب. نحن نعلم أننا لم نحصل على هذا المقياس وكيف يتم عرضه بشكل صحيح تمامًا. لقد تلقينا بالفعل بعض التعليقات الرائعة من المجتمع ".

الخدمة ليست مصممة فقط لإخراج الدرجات ولكن أيضًا لتسهيل على المطورين تحديد نقاط الضعف في التعليمات البرمجية الخاصة بهم وتعلم كيفية إصلاحها.

قال ستينسون: "كان تقليل حاجز الدخول إلى كتابة كود جيد هو الإلهام الأصلي للفكرة".

خطط فريق مشروع Tide لتحسين المقاييس المستخدمة في نتيجة المراجعة بناءً على تعليقات المجتمع

سيتم إطلاق موقع مشروع Tide ، wptide.org ، في WordCamp US وسيزود المطورين بالنتائج ، بما في ذلك تفاصيل مثل أرقام الأسطر وأوصاف عمليات الشم الفاشلة. سيتمكن مطورو المكونات الإضافية من استخدام الموقع لتحسين التعليمات البرمجية الخاصة بهم وسيتمكن مستخدمو WordPress من التحقق بسرعة من جودة المكون الإضافي. شرح مدير منتج XWP Luke Carbis كيف يتم حساب درجة Tide حاليًا.

"في الوقت الحالي ، يدير Tide سلسلة من عمليات استنشاق التعليمات البرمجية عبر مكون إضافي / سمة ، ويأخذ النتائج ، ويطبق بعض الترجيح (تعتبر مشكلات الأمان المحتملة أكثر أهمية من علامات التبويب مقابل المسافات) ، ثم يقوم بعد ذلك بحساب متوسط ​​النتائج لكل سطر من التعليمات البرمجية ،" قال. "ناتج هذا هو درجة من 100 ، وهو مؤشر رائع على جودة المكون الإضافي أو القالب. "الخوارزمية" التي تحدد النتيجة هي في الأساس مجرد سلسلة من الأوزان ".

تم اختيار الترجيحات التي تستخدمها الخدمة حاليًا كنقطة انطلاق ، لكن كاربيس قال إن الفريق يأمل أن يساعدهم مجتمع WordPress في تحسينها.

قال Carbis: "إذا كان ذلك منطقيًا ، فربما في يوم من الأيام يمكن أن تظهر هذه النتيجة في مدير WordPress (في صفحة إضافة مكون إضافي جديد)". "أو ربما قد يؤثر على نتائج البحث (احتلت المكونات الإضافية ذات التصنيف الأعلى المرتبة الأولى). أو ربما يبقى على wptide.org. يعود الأمر حقًا إلى المجتمع ليقرره ".

بالإضافة إلى تشغيل codeniffs ، ستقوم خدمة Tide بإجراء مسحين آخرين. سيتم إجراء فحص Lighthouse ، باستخدام أداة Google مفتوحة المصدر وآلية لتحسين جودة صفحات الويب ، على السمات ، والتي يقول كاربيس إنها "إنجاز تقني ضخم".

قال Carbis: "لكل سمة في الدليل ، نقوم بتثبيت تثبيت WordPress مؤقتًا ، ونجري تدقيقًا في Lighthouse في مثيل كروم مقطوع الرأس". "هذا يعني أننا نحصل على تقرير مفصل عن جودة إخراج الواجهة الأمامية للموضوع ، وليس فقط الكود الذي يشغله."

سيقوم المسح الثاني Tide بإجراء مقاييس توافق PHP وسيتم تطبيقه على كل من المكونات الإضافية والسمات.

قال Carbis: "يمكن لـ Tide معرفة إصدارات PHP التي سيعمل معها مكون إضافي أو سمة". "بالنسبة للمستخدمين ، هذا يعني أنه من المحتمل أن نخفي النتائج التي نعلم أنها لن تعمل مع تثبيت WordPress الخاص بهم (أو على الأقل إظهار تحذير). بالنسبة للمضيفين ، هذا يعني أنه يمكنهم بسهولة التحقق من توافق PHP قبل ترقية التثبيت إلى PHP 7 (نعتقد أن هذا سيؤدي إلى ترقية العديد من التثبيتات - التأثير الصافي هو زيادة ملحوظة في السرعة ، وهو ما نجده مثيرًا ومحفزًا حقًا). "

قال Carbis أن الفريق يعمل حاليًا على المدى القصير للحصول على جزء توافق PHP في واجهة برمجة تطبيقات WordPress.org ، والتي يقول إنها يمكن أن تبدأ في التأثير على نتائج البحث دون أي تغييرات في نواة WordPress.

"نود أيضًا أن نبدأ في المشاركة مع المجتمع لمعرفة ما إذا كان ظهور نقاط جودة الشفرة لمستخدمي WordPress مفيدًا ، وإذا كان الأمر كذلك ، فما هو شكل ذلك؟ (على سبيل المثال ، الدرجة من 100 ، تصنيف 5 نجوم ، A / B / C / D ، إلخ) ، "قال كاربيس. "سنصدر اقتراحنا بشأن الشكل الذي يمكن أن يبدو عليه كمكوِّن إضافي بعد فترة وجيزة من WordCamp US."

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