CLI cepat untuk menemukan kode Kotlin dan Java yang tidak terpakai di Android
Temukan simbol Kotlin dan Java yang tidak dapat dijangkau di seluruh proyek Android dengan pemindai statis yang didukung Rust yang memeriksa direktori proyek dan pemetaan R8. Dibuat oleh Kevin Doremy, SearchDeadCode menargetkan alur kerja pengembang Android dan integrasi CI, menawarkan pemindaian sesuai permintaan melalui antarmuka baris perintah. Ini menggabungkan dukungan proyek khusus Android, analisis hibrida dengan file pemetaan ProGuard/R8, dan desain ringan yang ditujukan untuk tim yang membersihkan utang teknis di basis kode besar.
Apa yang diidentifikasi oleh SearchDeadCode dalam basis kode Android?
SearchDeadCode melakukan deteksi kode mati yang terfokus dengan menganalisis file sumber Kotlin dan Java untuk menemukan kelas, metode, dan field yang tidak terpakai. Alat ini memindai direktori proyek dan mendukung struktur serta ketergantungan spesifik Android, menghasilkan daftar simbol yang tidak dapat dijangkau. Ini juga menerima file pemetaan R8 atau ProGuard untuk memperhalus hasil melalui analisis hibrida, yang meningkatkan pencocokan antara artefak yang diobfuscate dan pengenal sumber.
Apakah pemindai mempengaruhi sumber daya sistem atau alur kerja build?
Implementasi Rust menjaga eksekusi tetap cepat dan ringan, sehingga pemindaian berjalan dengan cepat dibandingkan dengan linter yang diinterpretasikan secara tipikal. Karena ini adalah program baris perintah, ia cocok untuk otomatisasi: CLI dapat dipanggil sesuai permintaan atau dari pipeline CI. Opsi distribusi termasuk instalasi melalui Cargo dan paket platform, yang memungkinkan tim untuk menyusun alat ke dalam tahap build atau lint yang ada tanpa jejak runtime yang besar.
Apakah aman dan praktis bagi tim untuk digunakan pada proyek nyata?
SearchDeadCode fokus pada analisis dan pelaporan hanya-baca, memberikan output deteksi daripada secara otomatis menghapus kode. Alur kerja itu mengurangi risiko dengan membiarkan pengembang meninjau kandidat sebelum perubahan. Alat ini ditujukan untuk insinyur mobile dan tim DevOps yang menangani proyek besar Kotlin/Java; pemeriksaan yang sadar Android dan dukungan file pemetaan membuatnya praktis untuk pembersihan kode di repositori produksi ketika digabungkan dengan langkah tinjauan pengembang.
Cocok untuk tim pengembangan yang menerima alur kerja CLI, dengan langkah tinjauan yang hati-hati
SearchDeadCode cocok untuk insinyur Android dan tim build yang membutuhkan laporan dead-code yang cepat dan terarah serta dapat menjalankan utilitas baris perintah. Ini mempercepat identifikasi simbol Kotlin dan Java yang tidak dapat dijangkau sambil menjaga perubahan tetap manual, sehingga tim mempertahankan kontrol atas penghapusan. Salah satu kompromi adalah bahwa ini melaporkan kandidat daripada melakukan pemangkasan otomatis yang aman, jadi masukkan outputnya ke dalam tinjauan kode dan pengujian sebelum penghapusan.