Terminator peninjauan kode. Tinjau mana Anda akan berterima kasih


Jahe membantu saya meninjau kode. Dan ketika dia tidak menyukai sesuatu - juga Terminator yang nyata,

"Code review Terminator," seorang rekan pernah memanggil saya setelah ulasan yang sangat produktif. Di satu sisi, itu menghibur Republik Ceko dan menyenangkan. Di sisi lain, seorang kolega benar-benar mempelajari sesuatu yang baru, dan ini memungkinkannya untuk menulis kode yang lebih baik. Jadi menang-menang.

Setelah pergantian pekerjaan, rekan kerja juga berubah. Tetapi di tempat baru juga, mereka mulai berterima kasih atas ulasannya. Saya memutuskan untuk mencari tahu mengapa, dan meletakkannya di rak. Ternyata 11 rekomendasi.

1. Perlakukan review sebagai salah satu kegiatan utama


Meninggalkan beberapa komentar seperti "Dan kemudian tidak ada cukup pengecekan nol" tidak cukup. Itu perlu:

  • Cari tahu apa yang perlu dilakukan
  • Pahami bagaimana itu dilakukan
  • . ( , , )?
  • , , . — , .

2.


Adalah satu hal untuk duduk di sebelah seorang kolega dan mendiskusikan sesuatu, melihat satu layar. Hal lain adalah meninjau kode di github atau bitbucket. Sangat mudah untuk salah memahami niat rekan ketika komunikasi terjadi dalam teks. Ambil frasa "Ada bug di baris ini". Ya, jelas bahwa frasa mengatakan bahwa artikel tersebut memiliki bug. Tetapi dia bisa diberitahu dengan emosi yang berbeda: kemarahan, kejutan, kegembiraan karena serangga itu tertangkap dan tidak masuk ke produksi. Atau mungkin dengan ketidakpedulian.

Kolega Anda mungkin salah memahami niat Anda - dan ini mengarah pada kebencian, ketegangan dalam tim, dan umumnya menyebalkan.

Buat hidup Anda lebih mudah: melembutkan frasa, mengubahnya menjadi pertanyaan, atau mungkin menambahkan wajah yang tersenyum.



3. Alokasikan waktu


Untuk memastikan kode bekerja dengan baik dan benar, Anda harus memahaminya sepenuhnya. Dan itu membutuhkan waktu; pastikan untuk menyorotnya cukup. Ingat bahwa meninjau bagian aplikasi yang tidak Anda ketahui akan memakan waktu lebih lama.

Secara umum, ini adalah sisi lain dari ulasan yang baik: itu memakan waktu. Jika Anda tidak punya waktu untuk melakukannya dengan baik, cobalah untuk menunda atau menunjuk orang lain (terdengar seperti saran dari penunda, tetapi situasinya berbeda). Jika ini bukan pilihan, tetapi Anda perlu melakukan tinjauan - ingat bahwa Anda mengorbankan kualitas. Meski perlu, tapi kompromi. Jika Anda mengubahnya menjadi kebiasaan, Anda akan mendapatkan lebih banyak hutang teknis di masa depan.

4. Jangan membuat asumsi; meminta


Ketika Anda menemukan kode aneh atau solusi yang terlalu rumit untuk tugas yang tampaknya sederhana, jangan berasumsi secara default bahwa seorang rekan membuat kesalahan atau pilihan yang buruk. Mungkin dia menyadari beberapa keadaan yang tidak Anda ketahui. Anda dapat dengan mudah mengklarifikasi dan menghindari risiko situasi yang tidak nyaman dan penuh tekanan jika Anda menyalahkan seseorang secara tidak adil. Misalnya: “Mungkin Anda bisa menggunakan kelas seperti itu di sini? Sejauh yang saya mengerti, dia akan cocok di sini dan itu akan lebih mudah daripada implementasi yang diusulkan. "



5. Tangkap situasi ketika Anda perlu menghubungi secara langsung


Biasanya, ulasan dilakukan secara tidak sinkron. Jadi, Anda dapat membenamkan diri dalam kode dan mengurangi perhatian kolega Anda. Tetapi dalam beberapa situasi, lebih baik untuk menghubungi langsung (dengan naik atau menelepon):

  • Ketika tenggat waktu habis. Umpan balik cepat mempercepat keputusan. Tapi rapi: dengan tenggat waktu dan sebagainya, semuanya terkokang, dan gangguan akan mengganggu dan menurunkan konsentrasi.
  • Kesalahan besar. Membahasnya di depan umum bisa sangat memalukan dan membuat frustrasi bagi seseorang. Lebih baik berbicara langsung dan menjelaskan masalahnya. Mungkin itu hanya kekhilafan, atau mungkin kesenjangan pengetahuan - yang sekarang terisi.
  • Pendekatan yang sepenuhnya salah dipilih. Untuk memberi tahu seseorang bahwa Anda harus membuang pekerjaannya, Anda harus berhati-hati. Lebih baik menggunakan bahasa tubuh dan intonasi untuk menyampaikan klarifikasi tanpa menyinggung.

Ya, ide bagus untuk menambahkan ringkasan percakapan ke sistem ulasan.

6. Baca tiketnya terlebih dahulu


Beberapa persyaratan mungkin tidak tercakup dalam permintaan tarik yang tampaknya benar. Untuk menghindarinya, baca saja pernyataan masalah terlebih dahulu. Pada saat yang sama, ini akan membantu dalam memahami apa yang umumnya terjadi dalam perubahan.



7. Justifikasi saran Anda


Beberapa kesalahan (salah ketik, misalnya) tidak perlu penjelasan. Tetapi jika Anda menawarkan solusi arsitektur alternatif atau nama lain - jelaskan kelebihan dan kekurangan dari kedua opsi tersebut. Apa yang tampak jelas bagi Anda mungkin tidak sepenuhnya jelas bagi orang lain.

Selain itu, ada pepatah: "Berikan seekor ikan kepada seseorang, dan kamu memberinya makan sehari. Ajari dia untuk memancing, dan kamu memberinya makan seumur hidup. " Ketika Anda mengajari kolega suatu pendekatan baru, ia akan dapat menggunakannya di masa depan dan menulis kode dengan lebih baik. Pada saat yang sama, kualitas proyek juga akan meningkat sebagai bonus.

8. Puji keputusan yang baik


Ulasan tidak harus berupa daftar kesalahan. Jika Anda melihat tempat yang baik, solusi yang menarik, metode yang berguna - ceritakan tentang hal itu. Komentar singkat “Keputusan keren” dapat meningkatkan suasana hati seseorang sepanjang hari. Ya, dan jangan memuji permintaan tarikan yang buruk: itu tegang dan menghancurkan makna gagasan.



9. Bersikap sopan


Petunjuk: frasa seperti " Bisakah kita singkirkan gaya sintaks komentar jaringan bodoh yang rusak otak? " Tidak sopan (maaf untuk bahasa Inggris di sini, tapi ini adalah pidato langsung oleh Linus Torvalds dan akan bodoh untuk menerjemahkan; dia dengan penuh warna bersikeras untuk tidak menggunakannya) semacam komentar tertentu, demi kesopanan, menambahkan "tolong").



10. Bantuan


Jika selama proses peninjauan, Anda menganalisis beberapa file dan akibatnya menemukan solusi alternatif - buang tautan rekan ke file ini. Anda bahkan dapat dengan nomor baris, bahkan lebih nyaman. Ini tidak akan membutuhkan banyak upaya Anda, tetapi seorang kolega dapat menghemat banyak waktu.

11. Sarankan, jangan menunjukkan


Ketika Anda mengusulkan pendekatan berbeda untuk ulasan - jangan beri tahu kolega Anda, berdasarkan pesanan, untuk menggunakan opsi Anda. Berargumen dan biarkan kolega Anda memutuskan. Kemungkinan besar, dia akan menerima saran Anda. Dan jika tidak, apa yang bisa menjadi alasannya?

  • Kedua pendekatan itu hampir sama. Jika tidak ada alasan obyektif untuk memilih pendekatan baru, maka tidak ada alasan untuk membuang waktu dan menerapkannya. Penafian: keseragaman kode adalah alasan objektif.
  • Ada alasan obyektif mengapa pendekatan Anda lebih baik. Tetapi untuk beberapa alasan, pembuat kode tidak memahaminya. Tinjau argumen Anda, jelaskan lagi - dan pada saat yang sama periksa apakah Anda sendiri salah.
  • Konflik pribadi. Ini adalah es yang licin dan Anda harus bertindak di sini dengan hati-hati. Dan ini sudah di luar cakupan topik ulasan.



Itu saja. Meringkas:

Jadikan dunia di sekitar Anda sedikit lebih baik. Ulasan bagus.



UPD. Artikel ini adalah terjemahan gratis dari sumber asli saya dalam bahasa Inggris . Dikonversi dari "terjemahan" ke "artikel" agar tidak membingungkan pembaca.

All Articles