2011-08-08 33 views
10

Eclipse Helios (3.6) çalıştırıyorum ve bir java kaynak dosyasında mantıksal kod satırlarının sayılacağı güzel bir eklenti olup olmadığını merak ediyordum. Mantıksal olarak, diğer bir deyişleKod satırlarının ölçülmesi için Eclipse eklentisi

if (j > 6) { 
    j--; 
} 

Yani, kod 2 mantıksal hatları (2 ifadeleri) yerine kod 3 fiziksel hatların sayılır.

cevap

3

Metrics2, ihtiyacınız olanı yapması gereken js3v tarafından açıklanan Metrikler eklentisinin güncellenmiş bir sürümüdür. Ayrıca, bazı ölçümleri toplayabilir (örneğin, paketin LOC'sini vermek için bir paket içindeki sınıfların LOC'lerini ekleyin). Bu page, yeteneklerinden bazılarını açıklar ve fiziksel olmayanları değil, mantıksal kod satırlarını sayar.

+0

Mantıksal kod satırlarının sayılması ile ilgili hiçbir şeyden söz edilmez. Bahsedilen şey, mantıksal operatörler de dahil olmak üzere, her ifadeden akış sayısını sayan McCabe Cyclomatic Complexity'dir. Mantıksal kod satırları farklı bir konudur. – Joeblackdev

+0

@Joeblackdev Benim hatam. "TLOC: Boş olmayan ve yorum yapmayan satırları sayan toplam kod satırı" sayar, bu da aynı değildir. Bunun için – kc2001

2

Ücretsiz Eclipse eklentisi olan checkstyle-cs kullanıyorum. Mantıksal kod satırlarının yanı sıra, aynı zamanda siklonatik ve N-yol karmaşıklığını da hesaplayacaktır (kod problemlerinin daha iyi bir göstergesi olabilir).

Her modülde bir rapor oluşturup oluşturmayacağını bilmeme rağmen, eşiği çok düşük olarak ayarlamayı deneyebilirsiniz (2 gibi). Checkstyle, her yöntemin başlangıcında size bir kaç satırlık kod bulunduğunu gösteren sarı bir vurgu sunmalıdır.

arada,

a[i++] = 7; 

bir ifade ya da iki olup olmadığı konusunda bizim takımda bazı anlaşmazlıklar vardı. İki ifade olarak sayılmayan bir anlaşmazlık yoktu.

+0

+1, mantıksal kod satırlarını saymam gerekiyor. – Joeblackdev

+0

Downvoter'a: Bu yanıtı keşfettiğinizde neredeyse beş yıl oldu. Reddetmek için bir sebebin var mı? Ne de olsa (OP'nin kendisi de aynı fikirde olduğu gibi) yararlıdır, araştırma gösterir ve bir referans bağlantısı vardır (hala çalışır). En sevdiğiniz araç değilse, favorinizi yükseltmenizi öneririm (favori olmayanı aşağı çekmek yerine). – rajah9

İlgili konular