PR İncelemesinde Gerçek Hatalar Sıkıcı Detaylarda Gizli
Bir Flutter geliştirici ekibini yönetirken her gün onlarca PR incelemek, ortaya çıkartıyor: üretim hatalarının çoğu hiç de zekice değil. Unutulmuş disposable nesneler, eksik error state'ler, tek bir değer değiştiği için bütün ekranı yeniden render eden widget'lar, bunlar sıradan ama ölümcül.
PR incelemesi yapan çoğu kişi ilginç kısımlara odaklanıyor, sıkıcı kısımları atlaşıyor. o sıkıcı kısımlar tam da gerçek bug'ların saklandığı yerler. Mimariye takılıp bir saat state management tartışması yaparken, üç dosya ötede bir kaçak stream subscription sessizce oturuyor. Kimse bu PR'ı suçlamayacak, ama uygulama çöküyor.
Diğer yandan CI'nin yeşil olduğunu gördüğü için hemen approve etmek de hata. Derleyici geçen kod, runtime'da başka türlü davranabilir. Eksik error handling, null check'ler, resource cleanup, bunlar test'te görünmüyor.
Gerçek inceleme şu demek: Mimariye kafa yormayı bırak, sıkıcı parçalara dalış yap. Disposable'lar doğru kapatılmış mı? Error state'ler var mı? Widget'lar gereksiz yeniden render olmuyor mu? Bir değişken nerede kullanılıyor, nerede sıfırlanıyor? Async işlemler iptal ediliyor mu?
Junior developer'ları suçlamak yanlış. Sorun inceleme kültürü. Bu yazı tam bunu anlatıyor, sıkıcı detaylar görmeyenlerin PR'ı geçirmesi, üretimde patlayan hatalarla sonuçlanıyor.
0 yorum