Idenya sebenarnya sangat bagus. Berlawanan dengan alur kerja umum, Anda menyimpan ulasan secara langsung dalam kode, jadi secara teknis, Anda tidak memerlukan apa pun selain editor teks untuk menggunakan alur kerja ini. Dukungan dalam IDE juga bagus, terutama kemampuan untuk menampilkan daftar ulasan di bagian bawah.
Ini berfungsi dengan baik untuk tim yang sangat kecil, tetapi tim yang lebih besar akan membutuhkan pelacakan atas apa yang ditinjau, kapan, oleh siapa dan dengan hasil apa. Meskipun Anda sebenarnya memiliki jenis pelacakan ini (kontrol versi memungkinkan untuk mengetahui semua itu), sangat sulit untuk digunakan dan mencari, dan akan sering membutuhkan pencarian manual atau semi-manual melalui revisi.
Saya tidak percaya bahwa resensi memiliki umpan balik yang cukup dari peserta yang ditinjau untuk mengetahui bagaimana poin yang ditinjau benar-benar diterapkan .
Bayangkan situasi berikut. Alice mengulas untuk pertama kalinya kode Eric. Dia memperhatikan bahwa Eric, seorang pengembang muda, menggunakan sintaksis yang bukan yang paling deskriptif dalam bahasa pemrograman yang sebenarnya digunakan.
Alice menyarankan sintaksis alternatif, dan mengirimkan kode kembali ke Eric. Dia menulis ulang kode menggunakan sintaks alternatif ini yang dia percayai dengan benar, dan menghilangkan // BLA
komentar yang sesuai .
Minggu berikutnya, dia menerima kode untuk ulasan kedua. Apakah dia bisa benar-benar ingat bahwa dia membuat komentar ini selama ulasan pertamanya, untuk melihat bagaimana Eric menyelesaikannya?
Dalam proses peninjauan yang lebih formal, Alice dapat segera melihat bahwa dia membuat komentar, dan melihat perbedaan kode yang relevan, untuk mengetahui bahwa Eric salah mengerti sintaks yang dia katakan kepadanya.
Orang masih manusia. Saya cukup yakin bahwa beberapa komentar itu akan berakhir dalam kode produksi, dan beberapa akan tetap menjadi sampah sementara sudah usang sama sekali .
Tentu saja, masalah yang sama ada dengan komentar lain; misalnya ada banyak komentar TODO dalam produksi (termasuk yang paling berguna: "TODO: Komentar kode di bawah ini."), dan banyak komentar yang tidak diperbarui ketika kode yang sesuai.
Misalnya, penulis asli kode atau pengulas mungkin akan pergi, dan pengembang baru tidak akan mengerti apa yang dikatakan oleh ulasan, sehingga komentar akan tetap selamanya, menunggu bahwa seseorang akan terlalu berani untuk menghapusnya atau untuk benar-benar memahami apa yang ia mengatakan.
Ini tidak menggantikan tinjauan tatap muka (tetapi masalah yang sama juga berlaku untuk ulasan lain yang lebih formal yang tidak dilakukan tatap muka).
Terutama, jika tinjauan awal memerlukan penjelasan, pengulas dan penerima ulasan akan memulai semacam diskusi . Tidak hanya Anda akan menemukan diri Anda dengan komentar BLA besar, tetapi diskusi itu juga akan mencemari log kontrol versi .
Anda juga dapat mengalami masalah kecil dengan sintaks (yang juga ada untuk komentar TODO). Misalnya, bagaimana jika komentar panjang "// BLA" muncul pada beberapa baris, dan seseorang memutuskan untuk menulisnya dengan cara ini:
// BLA This is a very long comment which is way beyond 80 characters, so it actually
// fills more then one line. Since the next lines start with slashes, but not "BLA"
// keyword, the IDE may not be able to show those lines, and display only the first one.
Dan akhirnya sebagai catatan minor dan sangat pribadi: jangan pilih "BLA" sebagai kata kunci. Kedengarannya jelek. ;)