kod satırı nedir?

oy
12

Ben kesinlikle doğru cevabı bu soruya orada olduğunu biliyorum ama insanlar satır kod bahsederken, bunlar ne anlama geliyor? Örneğin C ++ içinde boş satırlar sayabilirim? yorumlar? Sadece açık veya yakın ayraçta hatlar?

Bazı insanlar bir verimlilik ölçüsü olarak LoC kullanmak biliyoruz ve burada standart bir kongre olup olmadığını merak ediyorum. Ayrıca, kod satırları saymak için çeşitli derleyiciler almanın bir yolu olduğunu düşünüyorum - Standart sözleşme bulunduğu var mı?

Oluştur 09/12/2008 saat 17:33
kaynak kullanıcı
Diğer dillerde...                            


20 cevaplar

oy
22

Hayır, hayır standart kongre ve onlara biraz farklı olacaktır sayar her aracı vardır.

Bu Sormak yapabilir "o zaman hiç bir verimlilik ölçüsü olarak LOC kullanırsınız Neden?" cevap o olsun gerçekten değil çünkü sürece sürekli onları saymak gibi diğerleriyle bağlantılı bir projenin genel büyüklüğü hakkında bir fikir elde edebilirsiniz, kod satırını saymak nasıl olduğunu.

Cevap 09/12/2008 saat 17:38
kaynak kullanıcı

oy
11

Göz at Vikipedi maddesi , özellikle " Ölçme SLOC " bölümüne:

Fiziksel SLOC ve mantıksal SLOC: SLOC önlemlerin başlıca iki tipi vardır. Bu iki önlemlerin spesifik tanımları değişir, ancak fiziksel SLOC en yaygın tanımı comment hatları dahil olmak üzere programın kaynak kodunun metinde hatlarının sayısıdır. Bir bölümdeki kod satırları% 25'ten fazla boş satır oluşur sürece boş hat da dahildir. Bu durumda,% 25 aşan boş satır satır kod doğru sayılmamaktadır.

Mantıksal SLOC tedbirler "ifadeleri" sayısını ölçmek girişiminde, ancak kendi özel tanımlamalar belirli bilgisayar dilleri (C benzeri programlama dilleri için basit bir mantıksal SLOC ölçü tablosu-sonlandırma noktalı virgül sayısıdır) bağlıdır. Fiziksel SLOC ölçmek ve fiziksel SLOC tanımları açıklamak kolay araçlar oluşturmak için çok daha kolaydır. Mantıksal SLOC biçimlendirme ve stil sözleşmeler daha az duyarlı iken Ancak, fiziksel SLOC önlemler mantıksal alakasız biçimlendirme ve stil kuralları duyarlıdır. Ne yazık ki, SLOC önlemler genellikle kendi tanımını vermeden belirtilmiştir ve mantıksal SLOC genellikle fiziksel SLOC önemli ölçüde farklı olabilir.

SLOC belirlenirken karşılaşılan belirsizlik, örnek olarak Cı-kod olsun:

for (i=0; i<100; ++i) printf("hello");   /* How many lines of code is this? */

Bu örnekte vardır:

  • Kod LOC 1 Fiziksel Hatları
  • (Tablosu ve printf ifadesi için) Kod Lloc 2 Mantıksal Hatları
  • 1 Yorum Hattı

[...]

Cevap 09/12/2008 saat 17:40
kaynak kullanıcı

oy
8

diyecektim ki

  • yorum sayısı
  • boş satırlar bunlar okunabilmesi için önemli çünkü, saymak, ancak bitişik olmayan birden fazla
  • parantezleriyle hatları da sayar, ancak boş satırlar için aynı kural geçerlidir - onları tek satır olarak sayar arasında hiçbir kod ile 5 iç içe parantez yani.

Ben de naçizane aslında bir Loc değerine dayanan herhangi verimlilik ölçüsü ranza olduğunu öneririm :)

Cevap 09/12/2008 saat 17:37
kaynak kullanıcı

oy
4

Ben kadar veya fazla çalışma işlevsellik birkaç kod satırına ile sona, ama herhangi bir gün ... iyi bir gün. satır kod yüzlerce kaldırmak için güçlü olmak ve sadece fonksiyonel olarak var şeyle kadar rüzgar ve daha sürdürülebilir, harika bir şey.

Eğer takımda çok sıkı kodlama kurallarına yoksa, söyleniyor, kod fiziksel hat bir işe yaramaz istatistiktir. kod Mantıksal hatları hala işe yaramaz, ama en gibi tehlikeli yanıltıcı değil.

Cevap 09/12/2008 saat 21:54
kaynak kullanıcı

oy
3

Eğer verimlilik ölçüsü olarak LOC kullanırsanız, aniden "sistemi aldatmaya" çok daha verbosely yazma senin programcıları bulacaksınız. Bu aptalca bir tedbir olduğunu ve sadece aptal insanların övünme hakları daha şey için kullanmayın.

Cevap 09/12/2008 saat 17:50
kaynak kullanıcı

oy
3

Ne olursa olsun "wc -l" döndüren benim sayıdır.

Cevap 09/12/2008 saat 17:36
kaynak kullanıcı

oy
2

1 satır okuma 4 saniye =. ben o satırda dediğimi anlamaya bundan daha sürerse, çizgi çok uzun.

Cevap 09/12/2008 saat 20:19
kaynak kullanıcı

oy
2

"Kod Hatları" korumak zorunda şey içermelidir. Yani bir yorum içerir, ancak boşluk dışlar.

Eğer bir verimlilik metrik olarak bu kullanıyorsanız, bir sorun yoksa karşılaştırmalar yapıyoruz emin olun. C ++ bir çizgi Ruby bir çizgi ile aynı değildir.

Cevap 09/12/2008 saat 17:42
kaynak kullanıcı

oy
1

LOC kavramı kod hacmini ölçmek için bir girişimdir. diğer yanıtlar belirttiği gibi, özel sürece tutarlı olarak bir kod satırı dediğimiz önemli değil. Sezgisel olarak, görünüyor ki, 1000 çizgi programı ve böylece daha küçük bir 100 hattı programı daha küçük olan bir 10 hattı programı. Bunu 1000 çizgi programı daha 100 hat programı oluşturmak deubg ve korumak için daha az zaman alır beklenebilir. Gayrı en azından, sen hata ayıklama oluşturmak için gereken çalışma miktarı için kaba bir his vermek için LOC kullanın ve belirli bir boyuttaki bir program koruyabilir.

Tabii ki, bu kadar tutmaz yerler vardır. Örneğin, 1000 hatlarında işlenen karmaşık bir algoritma, diyelim ki, 2500'den hatları tüketir basit bir veritabanı programı geliştirmeye çok daha zor olabilir.

Yani, LOC bir sorunun boyutunun makul anlaşılmasına almak için yöneticiler sağlayan kod hacminin iri taneli ölçüsüdür.

Cevap 09/12/2008 saat 21:12
kaynak kullanıcı

oy
1

Sen "kod satırları düşünme olmalıdır harcanan değil" kod satırları " üretilen ".

Olaylar çok çizgilerin miktarı kötü kod cesaret verici dayanan olumlu bir kriter oluşturma, mümkün olduğunca basit olmalıdır.

Dahası, çok zor ucu yukarı bazı şeyler çok az kod ile çözüldü ediliyor ve çok kolay (örneğin alıcılar ve ayarlayıcılar gibi Demirbaş kodu) bazı şeyler çok az zaman içinde satırları bir çok ekleyebilir.

Ben satırları saymak için gidiyordu eğer asıl soruya gelince, ben üst üste boş satır dışındaki her satırı dahil olur. onlar (umarım) yararlı belgeler olduğundan herkes, ben de yorumlarınızı ekleyerek ediyorum.

Cevap 09/12/2008 saat 18:25
kaynak kullanıcı

oy
1

hiçbir doğru cevap yok.

gayri tahminler için ben wc -l kullanın.

Ben titizlikle şey ölçmek için gerekli, ben çalıştırılabilir ifadeleri ölçmek olacaktır. Hemen hemen bir açıklama terminatör ile herhangi bir şey (genellikle noktalı virgülle) veya bir blok ile biten. bileşik cümleler için, ben her substatement saymak istiyorum.

Yani:

int i = 7;                  # one statement terminator; one (1) statement
if (r == 9)                # count the if as one (1) statement
  output("Yes");      # one statement terminator; one (1) statement; total (2) for the if
while (n <= 14) {    # count the while as one (1) statement
  output("n = ", n);  # one statement terminator; one (1) statement
  do_something();   # one statement terminator; one (1) statement
  n++                       # count this one, one statement (1), even though it doesn't need a statement terminator in some languages
}                              # brace doesn't count; total (4) for the while

Şema veya Lisp'te yapıyor olsaydı, ifadeleri sayardın.

Diğerleri söylediler en önemli nokta, sizin sayınız tutarlı olmasıdır. Ayrıca bu kullanmakta olduğunuz önemli. Sadece izin vermek istiyorsanız bir potansiyel yeni kiralama proje ne kadar büyük, wc-l kullanmak biliyorum. Eğer planlama yapmak isteyen ve tahmin ediyorsanız, o zaman daha resmi almak isteyebilirsiniz. Herhangi koşulda üzerinde baz programcı tazminat LOC'yi kullanarak olmamalıdır.

Cevap 09/12/2008 saat 18:17
kaynak kullanıcı

oy
1

LOC herkesin bildiği belirsiz bir ölçümdür. Aynı ekip tarafından, aynı tarzı ile, aynı dilde yazılmış oldu kodunu karşılaştırırken ayrıntılı bir karşılaştırma için, sadece geçerli bu.

Ancak, bu bir emirdir-of-büyüklük fikri baktı belli karmaşıklık kavramını sağlamaz. Bir 10000 satırı programı çok daha karmaşık bir 100 satırı programının daha uzundur.

LOC avantajı döndürür -l o wc, ve diğer birçok yazılım ölçütleri aksine anlayış ya da hesaplama dahil hiçbir gerçek fancyness, var.

Cevap 09/12/2008 saat 17:52
kaynak kullanıcı

oy
0

Bir programcı performansını ölçmek için LOC kullanarak Büyüklüğüne bir resim kalitesini yargılamak gibidir. Loc tek "değer" olarak bana kalırsa olarak müşterilerinizi etkilemek ve rakiplerinizi korkutmak için.

Ben derlenmiş komut sayısı az muğlak olacağını düşünürdüm dedi. Yine de, kötü programcılar gereksiz yere ayrıntılı kod yazmak eğiliminde olduğunu avantajı var. Bir keresinde 28 çizgilerle gerçekten kötü kod 800+ hatlar yerine hatırlıyorum. Bu beni tembel yapar mı?

birincil performans ölçütü olarak LOC kullanan herhangi proje yöneticisi kötü programcıları hak bir aptal.

Cevap 02/09/2016 saat 00:40
kaynak kullanıcı

oy
0

.NET dünyasında global bir anlaşma var gibi görünüyor kodu (LoC) bir çizgi bir hata ayıklama dizisi noktasıdır . Bir dizi nokta ayıklama birimidir, bir kırılma noktası koyarak koyu kırmızı vurgulanan kod kısmıdır. Dizisi noktasıyla biz konuşabiliriz mantıksal LoC ve bu metrik çeşitli .NET dilleri arasında karşılaştırılabilir. Mantıksal Loc kodu metrik Visual Studio kod metrik, NDepend veya NCover dahil çoğu .NET araçları tarafından desteklenmektedir.

Bir 8 Loc yöntemi (başlangıç ​​ve parantez dizisi bitiş noktalarının dikkate alınmadığı):

alt metni

Fiziksel LoC aksine mantıksal Loc tarzı kodlama bağımlı olmamak için muazzam bir avantaja sahiptir (sadece bir kaynak dosyada çizgi sayısını sayma anlamında). Tarzını Kodlama, hepimiz başka bire bir geliştiriciden bir büyüklük sırasına kadar değişen fiziksel Loc sayma yapabilir, bu konuda hemfikir. Ben konuyla ilgili daha ayrıntılı bir blog yazısı yazdı: Nasıl Kanunu (KO) Of Lines sizin sayabilirim?

Cevap 12/12/2010 saat 19:12
kaynak kullanıcı

oy
0

Bazı insanlar bir verimlilik ölçüsü olarak LoC kullanmak biliyorum

Eğer onlar (daha kötüsü ya da kazara çalışmak kalmamak kim olduğunu söyler misiniz için ) onları?

Ben de C kullanılarak 2800 hatlarında uygulamaya ne olabilir Haskell kullanılarak 1400 hatlarında uygulayabilirsiniz, ben C veya Haskell daha üretken ben? uzun zaman alacak hangisi? (: O LOC sayısında lineer var ipucu) Hangisi daha hatalar yapacak?

Programcının değer senin alt satırında sayısını artırır ne kadar (boş dizesinden veya dahil) onun kod değişikliklerdir. Ben ölçmek ya da yaklaşmak için iyi bir yol bilmiyorum. Ama hiçbir makul ölçülebilir metrik gamed edilebilir ve gerçekten ne istediğini yansıtmamaktadır biliyoruz. Öyleyse kullanmayın.

Söyleniyor, nasıl LOCS sayabilirim? Basit, kullanımı wc -l. Neden doğru araç bu? Eh, muhtemelen herhangi bir sayı umurumda değil, ama genel toplam eğilimlerle ilgili bireysel eğilimler hakkında, (ve ne kadar tarafından yukarı veya aşağı gidiş) (yukarı veya aşağı gidiş, ne kadar hızlı yön değiştirme, ...) ve yaklaşık sadece sayı 82763 hariç hemen hemen her şey.

Olanlar arasında farklılıklar araçları tedbir muhtemelen ilginç değildir. Eğer numara aracı (ve tarafından tükürür dair kanıt yoksa sadece o aracı) ilginç bir şey ile ilişkilidir, kaba bir ballpark figürü olarak kullanmak; monotonicity başka bir şey, bir tane ama tuz bucketful sadece birlikte alınmalıdır.

Kaç kere sayın '\n'oluşur. Diğer ilginç karakterler olabilir saymak ';', '{'ve '/'.

Cevap 19/03/2009 saat 23:15
kaynak kullanıcı

oy
0

Kullandığım wc -lbir çalışma karmaşıklığının hızlı bir tahmin için. Ancak, verimlilik olarak metrik LOC olan kötü . LOC sayımı AŞAĞI giderse ben genellikle çok verimli bir gün benim eğer düşünün.

Cevap 22/12/2008 saat 00:44
kaynak kullanıcı

oy
0

Craig H tarafından kabul edilen yanıt w / hemfikir, ancak okulda ben beyaz boşluk, yorum ve beyanlar kod satırları ölçme açısından "satır kod" olarak sayılmaması gerektiği öğretildi olduğunu eklemek istiyorum yani Ol' ‘15-hatları, günde’ kuralı - verimlilik amaçları için bir programcı tarafından üretti.

Cevap 09/12/2008 saat 20:59
kaynak kullanıcı

oy
0

Bunun birçok yol bildirilen ve önemli bir metrik değildir demek mesajlar ile katılıyorum. Bu bak sürekli duymak-of-the geliştiriciler-para ödendi başına hat-of-kodu .

Cevap 09/12/2008 saat 20:09
kaynak kullanıcı

oy
0

Tek bir işlenebilir açıklamada gibi düşün. Örneğin

(1 satır)

Dim obj as Object

(5 hat)

If _amount > 0 Then
  _amount += 5
Else
  _amount -= 5
End If
Cevap 09/12/2008 saat 17:39
kaynak kullanıcı

oy
0
  1. LOCphy: Fiziksel hatları
  2. LOCbl: Blanklines Kommentarblocks werden als Kommentarzeile gezählt
  3. LOCpro: programlama hatları (beyanlar, tanımlar, direktifler ve kodu)
  4. LOCcom: yorumların hatları

Birçok kullanılabilecek araçlar vb doldurulmuş çizgiler ve yüzdesinin bilgiler vermektedir.

Sen sadece bakmak zorunda ama sadece buna sayılmaz.

LOC bir projeye başlamadan üzerinde kitlesel büyüyor ve değerlendirmeden sonra sıkça düşer;)

Cevap 09/12/2008 saat 17:38
kaynak kullanıcı

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more