Microsoft-ui-xaml: Pertanyaan: Mengapa tidak ada penganalisis kode (atau linter) untuk basis kode?

Dibuat pada 25 Jul 2019  ·  3Komentar  ·  Sumber: microsoft/microsoft-ui-xaml

Berdasarkan jumlah komentar pada PR ini tentang gaya dasar dan pemformatan kode, saya terkejut melihat bahwa tidak ada penganalisis (atau yang setara) yang disiapkan untuk secara otomatis memeriksa masalah seperti penggunaan spasi atau konvensi penamaan.

Apakah ada alasan mengapa ini tidak dapat ditambahkan?

Akan ada dua manfaat langsung:

  1. Kode akan diformat secara konsisten yang membantu membaca, memahami, dan memelihara.
  2. Ini berarti tinjauan kode tidak terganggu oleh masalah sepele dan dapat fokus pada kode. Ini dapat mengurangi jumlah komentar kode dan menghentikan masalah berharga yang hilang di antara beberapa diskusi tentang baris kosong.

Sisi bawah dari menambahkan pemeriksaan pemformatan otomatis ini mungkin karena kode yang ada tidak memenuhi serangkaian aturan apa pun sehingga mengaktifkannya akan menandai sejumlah besar masalah.
Jika itu masalahnya, aturan dapat diaktifkan (atau penganalisis ditambahkan) ketika sebuah proyek diubah (atau ditambahkan) sehingga tidak semuanya dilakukan sekaligus.
Atau, ketidakkonsistenan pemformatan biasanya mudah diperbaiki sehingga mungkin hanya perlu beberapa jam (berdasarkan pengalaman saya sebelumnya dengan proyek besar lainnya) untuk mengatasi apa yang ditemukan karena perkakas biasanya dapat secara otomatis memperbaiki sebagian besar dari mereka dan hanya pengecualian yang memerlukan manual intervensi atau peninjauan.
Ini bukan pekerjaan yang paling menarik untuk dilakukan tetapi membawa nilai dari waktu ke waktu.
Cakupan kode yang ada harus membuat perubahan ini berisiko rendah.

question

Semua 3 komentar

Saya kira editorconfig dapat ditingkatkan atau FxCopAnalyzers mungkin ditambahkan.

Saya sedang memikirkan StyleCop.Analyzers untuk kode C#. Saya tidak yakin apa yang terbaik untuk C++.

Saya tidak yakin apa yang terbaik untuk C++.

@RanjeshJ sedang berupaya agar clang-tidy dan clang-format diaktifkan untuk dijalankan pada basis kode dan saya pikir itu akan membantu untuk C++. MSVC tidak memiliki linter yang baik sejauh yang kami lihat.

Untuk C# ada hal -

Apakah halaman ini membantu?
0 / 5 - 0 peringkat