Jawaban Karl adalah 100% benar. Tidak ada cara untuk menjamin kesesuaian. Namun, selain pelatihan dan ulasan kode, pertimbangkan penggunaan alat analisis statis untuk memastikan kepatuhan. (Catatan: Saya mengatakan "selain", karena orang dapat mem-bypass mereka juga dengan cara yang persis sama seperti yang dinyatakan Karl).
Keuntungan menggunakan alat analisis statis adalah menghilangkan analisis kode manusia yang membosankan, mencari contoh "beberapa penggunaan IEnumerable" atau masalah kinerja apa pun dalam minggu yang Anda lihat (atau, setidaknya, yang selalu saya rasakan. melihat ke). Ini akan memungkinkan ulasan kode dan pelatihan untuk fokus pada masalah yang lebih "menarik".
Untuk C #, khususnya, saya telah memasukkan beberapa saran di bawah ini. Tancapkan ini ke lingkungan build Anda dan Anda siap melakukannya. Tetapi, secara umum, tidak peduli bahasa apa yang Anda gunakan, ada alat analisis statis di luar sana.
Salin / tempel langsung dari halaman Wikipedia, gunakan halaman wiki untuk informasi dan tautan terbaru:
https://en.wikipedia.org/wiki/List_of_tools_for_static_code_analysis#.NET
- .NET Compiler Platform (Codename Roslyn) - Kerangka kerja sumber terbuka untuk C # dan Visual Basic .NET yang dikembangkan oleh Microsoft .NET. Menyediakan API untuk menganalisis dan memanipulasi sintaks.
- CodeIt.Right - Menggabungkan analisis kode statis dan refactoring otomatis ke praktik terbaik yang memungkinkan koreksi otomatis kesalahan dan pelanggaran kode; mendukung C # dan VB.NET.
- CodeRush - Plugin untuk Visual Studio yang memperingatkan pengguna untuk pelanggaran praktik terbaik.
- FxCop - Analisis statis gratis untuk program Microsoft .NET yang mengkompilasi ke CIL. Standalone dan terintegrasi dalam beberapa edisi Microsoft Visual Studio; oleh Microsoft.
- NDepend - Menyederhanakan pengelolaan basis kode .NET yang kompleks dengan menganalisis dan memvisualisasikan dependensi kode, dengan menetapkan aturan desain, dengan melakukan analisis dampak, dan dengan membandingkan berbagai versi kode. Terintegrasi ke dalam Visual Studio.
- Parasoft dotTEST - Analisis statis, pengujian unit, dan plugin peninjauan kode untuk Visual Studio; bekerja dengan bahasa untuk Microsoft .NET Framework dan .NET Compact Framework, termasuk C #, VB.NET, ASP.NET dan Managed C ++.
- Sonargraph - Mendukung C #, Java dan C / C ++ dengan fokus pada analisis ketergantungan, pemeriksaan arsitektur otomatis, metrik dan kemampuan untuk menambahkan metrik khusus dan pemeriksa kode.
- StyleCop - Menganalisa kode sumber C # untuk menegakkan serangkaian aturan gaya dan konsistensi. Itu dapat dijalankan dari dalam Microsoft Visual Studio atau diintegrasikan ke dalam proyek MSBuild.