18
2011
Baştan yazmadan önce …
Eski kodlardan kurtulmaya çalışmak başınıza dertler açabilir.
Var olan eski projeyi sıfırdan yazmak,
eski kodları çöpe atmak ve mutlu olmak kulağa hoş geliyor değil mi ?
Fakat baştan yazmak yada ciddi değişiklikler yapmak (refactoring) hoş olmayan şeyler doğurabilir.
Joel Spolsky’nin bir yazısında Netscape’ın neden IE ‘ın gerisinde kaldığını okumuştum.
Netscape takımı mevcut kodları acımadan çöpe atıp, herşeyi baştan yazmaya çalışırken,
Microsoft IE atı almış ve Üsküdarı geçtiğini; yani pazar payını ele geçirdiğinden bahsediyordu.
Hani benim gördüğüm örnekler bu kadar dramatik olmasa da,
bir projeyi baştan yazacaksanız ve/veya elden geçireceksiniz,
şu noktalara dikkat etmenizi tavsiye ederim.

1 - Var olan projenin kodunu değiştirmeden önce,
o projenin bir yedeğini alınıp ve değişlik sırasında eski koda baka baka ilerlenebilir.
Eski kod içerisinde yapılan hatalar, uyarıları gözden kaçırmayın.
Unutmamak gerekir ki o kodun içerisinde tecrübe var.
2 - Olabildiğince eski kodu kullanın, gaza gelmeyin
3 - Değişiklikleri adım adım uygulamak her zaman iyidir;
yani ufak ufak değiştirin ve hemen ardından test edin.
Şu hoş olmaz, yüzlerce satır kod üzerinde değişiklik yaptıktan sonra testlerin çoğu çalışmaması.
Bu motivasyon açısında da kırıcı bir durum.
4 - Özellikle testleri senaryo bazında yapıyorsanız,
yapılan değişiklerin bu test senaryolarından geçtiğinden emin olun.
Hata varsa kesinlikle değişikliğe devam etmeyin.
Hata varsa durun, düzeltin ve bir sonraki adıma öyle geçin.
Kırık cam teorisini bu noktada yol gösterici olabilir.
5 - Neden proje üzerinde değişiklik yapıyorsunuz ?
Bunun amacını teyit etmek iyi olur.
Eğer sadece teknolojisi eski kaldı diye projeyi baştan aşağıya değiştirmek istiyorsanız,
durun ve düşünün derim.
Sadece teknolojisi eski diye başınıza iş çıkartmayın.
Halen saf jsp (java server pages) kullanan eski ve canavar gibi çalışan uygulamalar mevcut. Çalışıyorsa dokunma.
Benzer Yazılar
Kariyer
- Yazılım Geliştirme Uzmanları
MobilMutfak - Java Yazılım Uzmanı
Yapı Kredi Emeklilik - Java Yazılım Uzmanı
Universal Bilgi Teknolojileri - Yazılım Geliştirmeci ve Proje Mühendisi
Yapı ve Kredi Bankası - Java Yazılım Uzmanı
Abaküs Finansal Yaz. A.Ş









Güzel
Unutmamak gerekir ki o kodun içerisinde tecrübe var. +1
Netscape örneği haklı bir örnek
Ama bazen başkaları tarafından yazılmış(özellikle acemiler) bug dolu, test edilmemiş, mantıksız kodlar gerçekten insanı çileden çıkarabiliyor.
Teşekkürler.