Di perusahaan saya, ini adalah diskusi email tentang fitur apa yang diterapkan dan bug apa yang diperbaiki yang dikirim oleh orang yang menulis kode. Dan pengulas, yang menerima surat, akan meninjau kode dan membahas kualitas dan cara mengedit kode menurut pendapatnya. Apa yang berisi review kode standar?
code-reviews
Nicole
sumber
sumber
Jawaban:
Dalam pengalaman saya, sebagian besar ulasan kode formal beralih ke pengecekan gaya karena mudah. Bahkan ketika Anda memberikan daftar hal-hal untuk dilihat, cukup mudah bagi mata untuk mulai melirik.
Saya telah menemukan bahwa ulasan pengujian unit memberikan lebih banyak manfaat. Sebagian besar pengembang tempat saya bekerja tidak benar-benar tahu cara menguji unit dengan benar, dan begitu mereka mendapatkan "Aha!" saat sisa kode mereka mulai membaik juga. Ini sebuah petunjuk: ini bukan tes unit jika Anda mengharuskan pengguna untuk memeriksa sesuatu, dan itu bukan tes unit jika Anda baru memulai sesuatu untuk dijalankan dalam debugger.
sumber
Itu cenderung bervariasi berdasarkan pada apa masalahnya. Sering kali itu adalah stempel sederhana. "Inilah masalahnya, lihat baris ini di sini, sudah jelas apa yang salah, dan di sinilah aku memperbaikinya." "Yup, itu cukup jelas. Silakan dan periksa."
Tetapi ketika sesuatu yang lebih terlibat terjadi, biasanya seperti ini:
sumber
IMO, Tinjauan kode tidak ada hubungannya dengan fitur atau bug, tetapi berfokus pada kualitas kode dan tes yang ditulis untuk itu.
Jadi, Anda duduk di sebelah rekan Anda dan minta dia menjelaskan kodenya, atau ambil kodenya dan lalui, apa pun situasinya.
Memang membantu ketika semua orang memprogram melawan standar yang sama dan jika Anda menggunakan alat seperti fxCop untuk mengotomatiskan bagian dari proses.
sumber
Saya lebih suka review kode di mana dev duduk dengan reviewer dan melewati baris kode demi baris menjelaskannya. Seringkali, dev akan melihat masalah dalam melakukan penjelasan bahwa reviewer mungkin belum melihat yang mengapa ini adalah preferensi saya. Saya juga melakukan review kode di mana saya mengirim kode dan membacanya sendiri dan membuat komentar, tetapi saya menemukan itu cenderung memakan waktu lebih lama (saya meninjau dan menyusun komentar dan mengirim ke dev yang membacanya dan pergi WTF maksudnya dan email saya kembali dan saya jelaskan dan dua atau tiga putaran kemudian kita berkumpul dan saya menunjukkan di layar apa yang saya maksud dan dev pergi, "oh ya sekarang saya melihatnya.") dan menjadi kurang produktif karena ada diskusi yang kurang asli dan lebih lanjut, "Anda melakukan kesalahan ini."
Penting juga untuk menegakkan standar dalam tinjauan kode tetapi tidak menjadikannya satu-satunya fokus.
Namun, kode tidak dikirim ke produksi sampai peninjau kode bahagia atau manajer (bukan dev) telah menolaknya (peninjau kode juga salah). Ini sangat penting atau peninjauan kode hanyalah proses birokrasi tanpa nilai tambah kecuali peninjau kode harus menyetujui kode final sebelum didorong.
sumber
Pertama, Anda perlu memiliki standar pengkodean dan ini lebih dari sekadar sintaks. Ketika orang-orang mulai di perusahaan Anda, mereka harus mempelajari pedoman perusahaan Anda sebanyak mungkin sebelum mereka memulai pengkodean . Jika dalam proses peninjauan semua jenis pelanggaran ditemukan mereka kemungkinan besar akan:
Pedoman harus masuk akal dan harus ada alat yang tepat untuk menemukan pelanggaran dan untuk memperbaiki semudah mungkin. Selalu lihat tujuan pedoman dan tinjauan kode
Pedoman dalam pikiran saya misalnya bisa ada:
Dengan demikian, tinjauan kode terdiri dari perangkat lunak yang diperiksa terhadap pedoman dan:
sumber