Bence manuel kod incelemeleri yapmak ... iyi ... 80'ler. Evet, belki 90'lı.
Sürekli entegrasyon ve çevrimiçi kod inceleme sistemlerinin bu modern çağında, “kaynak kontrolünü kırabileceğinden” korktuğunuz için herhangi bir kodu taahhüt etmek istemezsiniz.
Hadi millet. Değişiklik kümesi (veya değişiklik listeleri) bunun için var. Programcılarınıza kaynak kontrol sisteminizin aç testerelerini beslettiriyorsunuz. Ardından, sürekli entegrasyon sunucunuz, hedeflenmiş yapıların bir likideti ile başlıyor (umarım, sadece günlük yapı, ama bazılarımız taşınır). Herhangi bir şey kırılırsa, maymun maymunu kupasını (genellikle birinin Lucky Charms tahıl kutusundan bulduğu plastik bir oyuncak) failin masasına koyar ve kırılma değişiklik listesini geri alırsınız. Pekâlâ, bazı sürekli entegrasyon sistemleri, yapı / departman / organizasyondaki herkese, yapıyı bozmuş olan herkesi göstermek için şık bir köprüyle birlikte e-posta / IM / masaüstü bildirimlerini otomatik olarak patlatır. Şimdi bu tatsız programcı '
Bu işlem devam ederken, kod inceleme sistemi devreye girer (yine, check-in tarafından tetiklenir). Nitelikli ekip üyelerine bir liste kaynak kontrolüne bağlı değişiklik listesinden haberdar edilir, inceleme sisteminde bir inceleme başlatılır ve herkes değişiklik listesindeki değişikliklere açıklama eklemeye başlar. Umarım herkes "LGTM" diyecektir. Programcı akıllı ise, dua / rüşvet / saklanmayı hatırlayacaktır. Ciddi sorunlar varsa, hakemler bir hata yaratabilir (hata izleme sistemine bağlanabilir), hatta değişimin geri çekilmesini bile isteyebilir. Evet, yedeklenen değişiklikler sadece egoya değil, zihnine de zarar veriyor. Genç geliştiriciler üzerinde, reddedilen değişiklik listelerini yeniden birleştirmek için iyi bir baharattır.
Geliştirme ortamınızda bir CI veya bir kod inceleme sistemi yoksa, bunları ciddi şekilde araştırmalısınız. Birkaç bağlantı size yardımcı olabilir:
Atlassian Potası
JetBrains TeamCity
reitveld
Hız Kontrol
Bir CI sunucusu alacaksanız, birim test çerçevelerini de ciddi olarak düşünmelisiniz. Eğer bir C # dev iseniz, başlamak için NUnit gibi bir şeye bakın .