17 Mart 2014 Pazartesi

Kod Metrikleri

Cyclomatic Complexity
Cyclomatic Complexity'nin Türkçesi kodun karmaşıklığı olarak ifade edilebilir. CC kod içinde decision Logic'in miktarı (the amount of decision logic in a source code function) hakkında bilgi verir.

Decision Logic olmayan statement'lar CC'ye dahil değildir.

CC'nin hesaplanmasına 2 ile başlanır. Her switch/case içindeki case için 1 eklenir.

If/else if içinde OR/AND varsa her birisi için 1 eklenir.

CC'nin yüksek olması bir kodun kötü olduğunu gösterir. Yani code smell'dir.

Fazla Sayıda If-Else Olması

Buradaki sorunda CC değeri 13 olan bir kodun If-Else ifadelerinden kurtulması için öneriler var. Çözüm genellikle if-else bloklarını tek bir döngü içine almak, reflection kullanmak veya if-else konfigürasyon içinse bu bilgiyi bir veri yapısı içine doldurarak arama yapmak şeklinde oluyor. Benzer bir örnek ise burada.

Hiç yorum yok:

Yorum Gönder