Burada, LOC’yi düşük tutmanın teknik avantajlarını ve dezavantajlarını ve anlamlı bir kaliteli yazılım ölçütü olup olmadığını ele alan pek çok cevap var. Bu, bununla ilgili değil. Bunun anlamı, belirli bir kodlama kuralına saf bir dogmatik bağlılık konusunda ısrar eden yönetim ile nasıl başa çıkılacağıdır.
Ne yazık ki, insanların uygun bağlamda kullanıldığında ve pragmatik olarak uygulandığında iyi tavsiye olan şeylere mandallaşma, bu bağlamdan çıkarma ve dogmatik olarak uygulamada, tavsiyenin ilk etapta hafifletmek için var olan sorunları takdir etmemek oldukça yaygındır. .
LOC’yu düşük tutmaya yönelik tavsiyelerin amacı tek seferde çok fazla şey yapmaya çalışan metotların yaratılmasından kaçınmak ve kendileri olmayan bir tasarım hakkında çok şey bilen “tanrı sınıflarının” yaratılmasını engellemektir. doğrudan sorumluluk ve sistemdeki diğer tüm sınıfların hangilerine dayandığı. Kısa kodun bir başka avantajı, daha okunabilir olmasıdır, ancak belirttiğiniz gibi, okunabilirliğin gerçekte acı çekmeye başladığı noktaya geçebilirsiniz.
Düşük LOC sayımlarının bariz avantajları vardır (küçük yöntemler kafanıza büyük olanlardan daha kolay uyar, koddaki daha az şey yanlış gitmek için daha az şey anlamına gelir, vb.), Ama aynı zamanda azalan verim yasasına tabidir. 150 çizgi yönteminin 20 çizgi yöntemine yeniden yansıtılması, 10 çizgi yönteminin 7 çizgi yöntemine yeniden yansıtılmasından çok daha büyük bir kazançtır.
Böyle bir yeniden düzenleme, başka iyi yazılım tasarımının başka yönleriyle (okunabilirlik gibi) pahasına olduğunda, bunu yapmamayı haklı çıkarabileceğiniz bir noktaya ulaştınız. Kodun ne anlama geldiğine bağlam veren değişkenleri kaldırmak ve bunları değişmeyen harflerle değiştirmek, yapmak için çok kötü bir şeydir. İyi kodun içinde neredeyse hiç değişmez vardır. Bununla birlikte, bu değişkenler (ve isimlendirilen sabitler) programa doğrudan katkıda bulunmayan kod satırlarıdır ve eğer LOC bir tür tanrı olarak tapınıyorsa, bu açıklama satırları hızlı bir kazanç için budanmış olmanın tehlikesi altındadır ve yönetimden bazı yanlış yönlendirilmiş övgüler.
Bunu gerçekleştirecek kadar akıllı olduğuna inanıyorum, aslına bakarsanız asıl sorunuzun etkisi bu. Sorun, kod azaltma işleminin ne zaman iyi olduğu ve ne zaman yapılmaması gerektiği konusundaki anlayışınız değildir; sorun normalde farkedilmeden makul bir uygulama olanı uygularken dogmatizmdir.
Yöneticinizle sohbet etmek için zaman ayırmanızı, konumunuzu ve neden yapmanız istenenin size yardım etmek yerine koda zarar verdiğini düşündüğünüzü açıklamanızı tavsiye ederim. Karşı karşıya gelmekten kaçının, ancak böyle bir tartışma sırasında rasyonel ve sakin kalmaya çalışın. Yönetiminizin programlamanın pragmatik bir faaliyet olduğunu anlaması önemlidir ve en iyi uygulama önerileri yalnızca pragmatik bir şekilde uygulanırsa yararlıdır. En iyi uygulama, bir taşa oyulmamış bir taşa yazılmıştır ve çakıştığında (okunabilir kod yerine kısa kod), daha sonra hangi en iyi uygulamanın uygulanacağı konusundaki kararlarını uygulamak programcının elindedir. Umarım böyle bir girişi takdir eden makul insanlardır.
Ayrıca biraz cesur olmalısınız, çünkü gereksiz veya uygunsuz olduğunu düşündüğünüz LOC'yi azaltmak için baskı altındaysanız, o zaman sessiz bir yaşam uğruna yine de değişiklik yapmanız doğaldır. Buna karşı koymalısın ve bu karara "sahip" olmalısın. Yönetimin makul olduğu bir durumda, kurallarına tam olarak uymak zorunda kalmamalısınız, ancak yapmadığınız tüm durumları haklı gösterebilmelisiniz.
Ne yazık ki, insanlar kararsızlık seviyesine gelince, kararlarını ve size dayatılan kuralları sorgulayan hiyerarşi düzenine daha düşük olan insanlara gelince mantıksız olabilir. Makul olmamayı tercih edebilirler. Bunun için de hazırlıklı olmalısın. LOC en iyi uygulamasının diğer en iyi uygulamalarla doğrudan çatışmaya neden olduğu durumları ve bunun neden ürüne zarar verdiğini gösterebiliyorsanız ve bunu, çok az kişisel bir katılımın olduğu veya hiç olmadığı bir kod üssü bölümlerinde yapabilirseniz (bu işlerine ya da denetledikleri işlere kişisel bir saldırı gibi görünmüyorlar) o zaman bu argümanınızı desteklemeye yardımcı olabilir. Yine, kendinizi sakin ve rasyonel bir şekilde haklı göstermeye ve yaptığınız argümanları "sahiplenebilmeye" hazırlıklı olmalısınız.
Yönetiminizin makul kişiler olması koşuluyla, iddialarınızı desteklemek için kanıt sağlayabildiğiniz takdirde söylediklerinizin haklı olduğunu takdir etmeleri gerekir.
s/\n/ /g
) uzaktan bile okunabilir olacağı anlamına gelmez