حان الوقت لنحب محلل ثابت! تلبية Detekt في Kotlin
إذا كنت تعرف بالفعل ما سيتم مناقشته وكنت مهتمًا فقط بتنفيذ المشروع ، فتابع مباشرة إلى نقطة التثبيت.
ما هذا؟

إجراء تحليل البرمجيات (على عكس التحليل الديناميكي) دون التنفيذ الحقيقي للبرامج قيد الدراسة.
ويكيبيدياوبكلماتك الخاصة ، إنها أداة ملائمة تساعدك على الامتثال لقواعد الكود الجيد. السماح التخصيص مرنة للغاية من المرشحات من خلال تعريف رمز سيئة. التي ستصدر في كل عملية إطلاق تقريرًا معينًا ، بما في ذلك البيانات الإحصائية عن التعارضات المكتشفة ، والمعلومات المتعلقة بها ، والتي تتيح تحديد مكان حدوث التعارض ونوعه.
تعمل أدوات التحليل الثابتة على تسهيل عمل المراجع وتوفير وقت فريق التطوير بشكل عام.
لنفترض أن لدينا علاقات عامة جيدة ، ومع ذلك ، فقد قدم المؤلف أسماء أطول من اللازم للمتغيرات ، ورمز مكتوب يمكن تبسيطه بسهولة أو انتهاكه لأحد القواعد العديدة المحددة في ملف تكوين Detekt ، والقواعد ليست معقدة ، ولكن مراجعة التعليمات البرمجية لن تمر بهذه العلاقات العامة.
سيتعين على المؤلف مرة أخرى التبديل بين المشاريع ، وكذلك المراجعين ، وأنا متأكد من أن المراجعة المتكررة لن تجلب سوى القليل من المتعة.
أتمتة إذا كان سريعًا وغير مكلف. (ج) الحس السليم
ما هي أجهزة التحليل الثابتة؟
لجافا:بالنسبة لكوتلين:أجب على السؤال الذي نشأ في رأسك ، لا يعمل Spot-bugs على Kotlin.
تقديم Detekt في المشروع
يمكن تثبيت الكشف بعدة طرق:
- البرنامج المساعد ل AndroidStudio
- Gradle
أعتقد أن التكوين من خلال Gradle أكثر مرونة وأتحدث عنه.
توجد على الموقع الرسمي عدة طرق لتثبيت Detekt في المشروع ، اعتمادًا على إصدار Gradle ، سواء كان مشروع Android. ولكن ، في تجربتي في تنفيذ مشروع android ،
لا تعمل بعض التعليمات . في الوقت الحالي ، المشروع قريب جدًا من الإصدار 1.0. أحدث إصدار في وقت كتابة هذا التقرير هو مرشح الإصدار 1.0.0-RC14
هكذا.
نذهب إلى الموقع الرسمي
Gradle ونرى تعليمات التثبيت.
buildscript { repositories { maven { url "https://plugins.gradle.org/m2/" } } dependencies { classpath "io.gitlab.arturbosch.detekt:detekt-gradle-plugin:1.0.0-RC14" } }
هذا القرار أنصحك بالالتزام بمشروع Android.
ربما لاحظت أنني قمت بإزالة التطبيق: سطر البرنامج المساعد ، حيث أنصحك بفصل Detekt إلى ملف منفصل وتطبيق التقدم فيه بالفعل.
المرحلة 1:
لذلك ، انسخ هذا الرمز إلى مستوى التطبيق build.gradle.
هناك ، في كتلة
allprojects ، يجب أن نكتب سطرًا لتطبيق ملفنا الذي يحتوي على إعدادات detekt.
allprojects { apply from: "$rootDir/detekt.gradle" repositories { maven { url "https://plugins.gradle.org/m2/" } } }
المرحلة 2:
ثم تحتاج إلى إنشاء ملف
detekt.gradle apply plugin: "io.gitlab.arturbosch.detekt" detekt { toolVersion = "1.0.0-RC14"
المرحلة 3:
أنت الآن بحاجة إلى إنشاء ملف التكوين
detekt-config.ymlهذا ملف تكوين قياسي من
الموقع الرسمي .
المرحلة 4:
افتح وحدة التحكم وقم بتشغيل الأمر:
gradlew detektهذا كل شئ!
الآن لديك إحصائيات جاهزة لمشروعك. يتم عرضها في وحدة التحكم ، ويمكنك أيضًا العثور عليها على طول المسار: {u_project} \ app \ build \ reports \ detekt
في الختام
يعد استخدام Detekt مناسبًا جدًا عند البناء في
جنكينزوقت تنفيذ المهمة في مشروع مع أكثر من 2000 فئة هو 4-7 ثواني *.
أريد أن أقول إن استخدام محلل ثابت يبسط عملنا قليلاً. يسرع عملية التطوير ويوفر أموال الأعمال.
المراجع:
ديتيكت جيثبإعداد detektdefault-detekt-config.yml