Kodumun büyük bir bölümünün değiştirilmesi gerektiğine karar verdiğimde, ya yanlış olduğu ya da diğer nedenlerle gerekli büyük mimari değişikliklere adapte edilmesi gerektiği için, tipik olarak yaptığım şey şu:
- Değiştirmem gerekebileceğini düşündüğüm tüm kodları yorumluyorum. Yorumlanan kodu TODO listemin bir türü olarak kabul ediyorum.
- Bu kodun yorumlanan kodunu ve uncomment bölümlerini aşamalı olarak gözden geçiririm veya başka bir yere kopyalayıp yapıştırarak sonra bunları gerektiği şekilde düzenlerim veya bu kodun bölümlerini sıfırdan yeniden yazıp referans koduna bakarım. Ne zaman bir yorum kodunun bir parçası ile bittiğimi sanırım kaldırırım.
- Artık yorumlanmış kod olmadığını görene kadar devam ediyorum.
Yalnız geliştirdiğim kişisel projede bunu büyük ölçüde yaptığımı not etmeliyim.
Ancak bana bunu yapmayı bırakmam gerektiği söylendi. Bunun yerine, yorum yazıp bırakmak yerine eski kodu görmek için eski taahhütlere atıfta bulunarak git kullanmaya başlamam gerektiği söylendi. Bana söylendi:
Kodu yorumlamak, ortadan kaldırılması gereken kötü bir alışkanlıktır. Tecrübeniz yok, bu yüzden bunu anlayamıyorsunuz. Birkaç yıl içinde, kodu yorumlamayı seven başka bir kişinin kodunu görürseniz, kendinize bu kişide küfür etmeye başlayacaksınız. Ne zaman bir kod yorumladıysam, onu bile bakmadan tamamen kaldırırım, çünkü genellikle bu kod tamamen değersizdir. Küçük, tek kişilik projelerde kod yorumlamanın olumsuz taraflarını kesinlikle göremezsiniz; ama bir iş bulup bu alışkanlığı devam ettirirseniz, çok yazık olur.
Şu an göremediğim şeylerin ne dezavantajları neler olduğunu sorabilir miyim?
Gerçekten geçmiş kodu görmek için sadece git kullanarak merak ediyorum söylemeliyim. Dediğim gibi, kod yorumlamayı bir yapılacaklar listesi olarak ele alıyorum; git bana kodun nasıl kullanıldığını gösterecek olsa da hangi kodun hala gözden geçirilmesi gerektiğini ve hangilerinin daha önce yapıldığını açıkça göstermekte başarısız olacak. Kodun bir bölümünü özleyebileceğim ve hataları ortaya çıkarabileceğimden korkuyorum.
Tamamlanması için, alıntı yaptığım kişinin tecrübeli bir geliştirici ve Bob Amca'nın "Temiz Kod" hayranı olduğunu eklemeliyim.