Saya sedang dalam proses mencoba menjual organisasi saya berdasarkan nilai ulasan kode. Saya telah bekerja di beberapa tempat di mana mereka bekerja. Saya telah melihat mereka terbiasa dengan pilihan gaya styling, dan keputusan fungsional, dan saya telah melihat mereka digunakan sebagai tidak lebih dari pengecekan usus untuk memastikan tidak ada yang berbahaya sedang dilaksanakan. Perasaan saya adalah bahwa tujuan yang paling efektif adalah di antara dua opsi.
Jadi, apa tujuan dari Peninjauan Kode?
code-reviews
theory
SoylentGray
sumber
sumber
Jawaban:
Ada beberapa alasan mengapa Anda ingin melakukan tinjauan kode:
Ada beberapa kasus bisnis untuk melakukan tinjauan:
Jika Anda mencari diskusi yang komprehensif tentang manfaat dan strategi implementasi untuk ulasan sejawat, saya akan merekomendasikan memeriksa Ulasan Peer dalam Perangkat Lunak: Panduan Praktis oleh Karl Wiegers .
sumber
this
konteks, tidak menggunakan.hasOwnProperty
di tempat seharusnya, dll, dll. - Jadi, terutama untuk standar. Dalam bahasa yang dikelola seperti C # Anda tentu saja memiliki beberapa alasan lebih sedikit daripada bahasa dinamis.Ulasan Kode adalah alat untuk transfer pengetahuan .
Ketika pengembang meninjau kode masing-masing, mereka mendapatkan keakraban di semua area sistem. Ini mengurangi faktor bus proyek, dan membuat pengembang lebih efisien ketika harus melakukan pemeliharaan pada bagian dari sistem yang tidak mereka tulis.
Ketika seorang programmer junior meninjau kode senior, programmer junior dapat mengambil trik jika tidak hanya dipelajari melalui pengalaman. Ini juga bisa berfungsi sebagai koreksi terhadap kode yang terlalu rumit.
Peninjauan kode menyeluruh akan sering memerlukan pemeriksaan terhadap berbagai dokumentasi. Ini cara yang bagus untuk belajar bahasa atau API.
Ketika seorang programmer senior meninjau kode junior, ini adalah kesempatan untuk menyelesaikan masalah sebelum diterjemahkan ke dalam hutang teknis. Peninjauan kode bisa menjadi pengaturan yang baik untuk membimbing programmer junior.
Ulasan kode bukan tentang:
... menemukan bug. Itulah gunanya tes. Masih sering terjadi bahwa tinjauan kode menemukan beberapa masalah.
... pilih-pilih masalah gaya - puas dengan satu gaya, dan gunakan pemformat otomatis untuk menegakkannya. Tetapi ada banyak hal yang tidak dapat diperiksa oleh alat otomatis. Ulasan kode adalah tempat yang baik untuk memastikan kode didokumentasikan atau didokumentasikan sendiri.
sumber
Hal paling berharga yang saya dapatkan secara pribadi dari tinjauan kode adalah keyakinan bahwa kode tersebut jelas bagi orang lain. Apakah variabel diberi nama dengan jelas? Apakah tujuan dari setiap potongan kode cukup jelas? Apakah ada yang ambigu diklarifikasi dengan komentar? Apakah kasus tepi dan nilai yang valid untuk parameter diuraikan dalam komentar dan diperiksa dalam kode?
sumber
Saya ingin menambahkan dua area yang tidak tercakup oleh jawaban hebat lainnya:
Salah satu alasan bagus untuk ulasan kode adalah efek Hawthorne yang dalam kasus kami diterjemahkan menjadi: Jika Anda tahu seseorang akan melihat kode Anda sesudahnya maka Anda jauh lebih mungkin untuk menulisnya dengan lebih baik.
Alasan bagus lainnya adalah untuk praktik pembangunan yang aman dan lebih baik. Kita hanya perlu melihat kegagalan Apple (garis duplikasi kode yang tidak disengaja) atau bug Heartbleed (kegagalan dasar dalam validasi input) untuk memahami pentingnya tinjauan kode yang tepat dalam siklus hidup pengembangan yang aman.
sumber