Sudah waktunya untuk mencintai analisa statis! Temui Detekt di Kotlin
Jika Anda sudah tahu apa yang akan dibahas dan Anda hanya tertarik untuk mengimplementasikan proyek, segera lanjutkan ke titik instalasi.
Apa ini

Analisis perangkat lunak dilakukan (sebagai lawan dari analisis dinamis) tanpa eksekusi nyata dari program yang diteliti.
WikipediaDan dengan kata-kata Anda sendiri, ini adalah alat yang nyaman yang membantu Anda mematuhi aturan kode yang baik. Mengizinkan penyesuaian filter yang sangat fleksibel dengan definisi kode buruk. Yang pada setiap peluncuran akan menghasilkan laporan tertentu, termasuk data statistik tentang konflik yang terdeteksi, informasi tentang mereka, yang memungkinkan untuk menentukan di mana konflik terjadi dan jenisnya.
Analisis statis memudahkan pekerjaan pengulas dan umumnya menghemat waktu tim pengembangan.
Misalkan kita memiliki PR yang baik, namun, penulis memberi nama yang terlalu panjang untuk variabel, menulis kode yang dapat dengan mudah disederhanakan atau dilanggar salah satu dari sekian banyak aturan yang ditetapkan dalam file konfigurasi Detekt, aturannya tidak rumit, tetapi kode-review tidak akan lulus seperti PR.
Penulis lagi harus beralih antara proyek, serta pengulas, saya yakin bahwa ulasan berulang akan membawa sedikit kesenangan.
Otomatis jika cepat dan tidak mahal. (C) Akal sehat
Apa itu analisa statis?
Untuk java:Untuk Kotlin:Saya menjawab pertanyaan yang muncul di kepala Anda, Spot-bug di Kotlin tidak berfungsi.
Memperkenalkan Detekt ke dalam proyek
Deteksi dapat diinstal dengan beberapa cara:
- Plugin untuk AndroidStudio
- Gradle
Saya pikir konfigurasi melalui Gradle lebih fleksibel dan saya membicarakannya.
Di situs web resmi ada beberapa cara untuk menginstal Detekt di proyek, tergantung pada versi Gradle, apakah itu proyek Android. Tapi, dalam pengalaman saya menerapkan proyek android,
beberapa instruksi tidak berfungsi . Saat ini, proyek ini sangat dekat dengan rilis 1.0. Versi terbaru pada saat penulisan adalah kandidat rilis 1.0.0-RC14
Jadi
Kami pergi ke situs web resmi
Gradle dan melihat petunjuk pemasangan.
buildscript { repositories { maven { url "https://plugins.gradle.org/m2/" } } dependencies { classpath "io.gitlab.arturbosch.detekt:detekt-gradle-plugin:1.0.0-RC14" } }
Ini adalah keputusan yang saya anjurkan untuk dipatuhi untuk proyek Android.
Anda mungkin memperhatikan bahwa saya menghapus baris apply: plugin, karena saya menyarankan Anda untuk memisahkan Detekt menjadi file yang terpisah dan menerapkan apply di dalamnya.
Tahap 1:
Jadi, salin kode ini ke level aplikasi build.gradle.
Di sana, di blok semua
proyek, kita harus menulis baris untuk menerapkan file kita yang berisi pengaturan detekt.
allprojects { apply from: "$rootDir/detekt.gradle" repositories { maven { url "https://plugins.gradle.org/m2/" } } }
Tahap 2:
Maka Anda perlu membuat file
detekt.gradle apply plugin: "io.gitlab.arturbosch.detekt" detekt { toolVersion = "1.0.0-RC14"
Tahap 3:
Sekarang Anda perlu membuat file konfigurasi
detekt-config.ymlIni adalah file konfigurasi standar dari
situs resmi .
Tahap 4:
Buka konsol dan jalankan perintah:
gradlew detektItu saja!
Sekarang Anda memiliki statistik siap untuk proyek Anda. Mereka ditampilkan di konsol, dan Anda juga dapat menemukannya di sepanjang jalan: {u_project} \ app \ build \ reports \ detekt
Kesimpulannya
Sangat nyaman menggunakan Detekt saat membangun di
JenkinsWaktu pelaksanaan tugas dalam proyek dengan lebih dari 2000 kelas adalah 4-7 detik *.
Saya ingin mengatakan bahwa menggunakan analisa statis sedikit menyederhanakan pekerjaan kami. Mempercepat proses pengembangan dan menghemat uang bisnis.
Referensi:
Detekt githubSiapkan detektdefault-detekt-config.yml