Hepimizin bildiği gibi yazılım geliştirme çok kompleks ve kaotik bir süreçtir. Niyetlendiğimiz işe başladıkdan sonra bile çok sıkça niyet değiştirebiliriz. İsteklerimiz değişebilir, müşteri fikir değiştirebilir ve her şeyi sil baştan yapabiliriz. Zira işe başladıktan sonra kaybedilecek şey sadece zamandır ve zaman da göreceli olarak değersiz görülür. Oysa bir inşaat işine başladığınızda plan dışına çok nadir çıkarsınız, çünkü planı değiştirmek istediğinizde o ana kadar kullandığınız inşaat malzemesini çöpe atmak istemezsiniz o malzemenin ölçülebilir maddi değeri vardır. Ancak müşteri, yazılımın geliştirme safhasında henüz bir şey görmediği için değişiklik isteklerini futursüzca yazılım ekibine iletebilir. Bizler de yazılım geliştiriciler olarak her şeyin bir yolunu bulabildiğimiz için bir şekilde müşteriye ayak uydurmak zorunda kalırız. Bu ayak uydurmalar zaman içinde yazılımımızın kod kalitesini, standardını ve tasarımını bozmakla beraber bir çok kod parçasının nerdeyse tekrar dokunulamaz hale gelmesine neden olmakta.
İşte bütün bu riskleri minimuma indirgemek için daha en başta bazı temel kurallara dikkat etmek ve herkesçe malum olan bazı kötü tasarım ve geliştirme yaklaşımlarından uzak durmak gerekir. Bu sayede geceleri daha rahat uyuyabilir, müşteri taleplerine daha serinkanlı cevap verebiliriz.
Bu yazıda yazılım geliştiriciler tarafından yapılmaması gereken ve sebebi ne olursa olsun (istisnalar hariç olmak üzere) uzak durulması gereken ve ismi konulmuş bir takım kavramlardan ve yöntemlerden bahsedeceğim. Kısacası konumuz : “anti-pattern”.
İşte size adını sıkça duyabileceğiniz yapılmaması gerekenler; Okumaya devam et