Codezeilen



2Lines of Code (kurz LOC ; englisch für – Code-Zeilen in S. v Anzahl der Programmzeilen;.. Engl . Source – Code – Zeilen , SLOC ) ist ein Begriff aus der Software Technik . Es Handelt sich dabei um Eine Softwaremetrik , d. H. Eine Maßzahl, um Größe Einer sterben – Code Basis Eines Computerprogramme oder Waden Technologien Wachstums- zu beschreiben. Die Zeilen Code sind im einfachsten Fall die Anzahl der Zeilen des Quelltextes sowie das Programm.

This Metrik ERLAUBT keine aussagen über sterben fliegen Effizienz der Programmierer , sterben denn Anzahl der Zeilen hangt von unterschiedlichsten Faktor ab: Architektur gewählte, Erfahrung der Programmierer, gewählte Lösung, Formatierung Dezember Quellcodes, Verwendete Programmiersprache usw. Zudem besagte sterben 80/20-Regel that 80% , wo Zeilen in 20% der Zeit geschrieben Werden. So kann das Gründliche Test Eines Programm sehr viel Zeit in anspruch nehmen, während die ist Anzahl geänderter oder ergänzter Programmzeilen nur Aggregation.

Üblicherweise Rechner Mann mit Einer Insgesamt Produktivität – darunter auch große Projekttätigkeiten – von 10 bis 50 Lines of Code je Mitarbeiter und Tag. Ein Softwareentwicklungsprojekt mit Einem Insgesamt Aufwand von 1.000 Personentagen (~ 5 Personenjahre) sollte between Auch 10.000 und 50.000 Codezeilen produziert HABEN. [1]

Berechnungsarten

Bei Lines of Code gibt es folgende Vorträge:

1 / * Wer segelt das? * /
2 public void AusgabeEinsBisHundert () {
3
4 für ( int i = 1 ; i <= 100 ; ++ i ) {
5 System . aus . drucken ( "" + i ); // hier die Ausgabe der Zahlen aus der Schleife
6 }
7 }
Codezeilen (LOC)
Auch Physics Lines oder Code Genannt. Anzahl Segeln inkl. Ledersegel und Kommentare. In obigem Beispiel. Oft ist der Stellvertreter für einen der anderen Berechnungsarten zuständig.
Quellcodezeilen (SLOC)
Anzahl der Codezeilen ohne Leerzeilen und Kommentare. In obigem Beispiel.
Kommentarzeilen des Codes (CLOC)
Kommentar Kommentar Sails, Wobei Nicht Definiert ist, Ob auch Segeln mit Code und Kommentare eingegeben. In obigem Beispiel 1 oder 2.
Nicht-Kommentarzeilen des Codes (NCLOC)
Auch Nicht-Kommentar-Quellzeilen (NCSL) oder Effektive Code-Zeilen (ELOC). Anzahl der Codezeilen ohne Leerzeilen und Kommentare ohne Header und Footer. Header und Footer Sind insbesondere sterben Äußeres und schliessenden öffnenden Klammern, Eulen (auf Klassenebene) Import / Include-Statements und (auf Methodenebene) Methodendeklarationen. Obiges Beispiel hat auf Methodenebene 3, auf Klassenebene 5 NCLOC.
Logische Codezeilen (LLOC)
Auch Anzahl der Aussagen (NOS). Zählt die Anzahl der Anweisungen . Würde zBw. bei COCOMO used. In Programm C wurden alle in Schleswig-Holstein gegebenen Anweisungen als eigenständige Bekanntmachung betrachtet. In C hätte obiges Beispiel auch 4 LLOC.

Verwendung

Die meisten von Prog Vergleich Rahmen über die LOC betrachten nur sterben Größenordnung der Anzahl Zeilen verschiedene Projekte. Computerprogramm Infos finden aus nur wenigen Dutzend bis zu Hund Pea von Million Programmzeilen Bestehen. Es umfang Eines Programme in Codezeilen muss nicht zwangsläufig Rückschlüsse Auf die Komplexität oder Funktionalität des Programm erlaub, dann sterben verwendung extern Frameworks und Programmbibliotheken , sterben Verwendete Programmiersprache und Auch sterben Formatierung Dezember Quelltextes Grossen einfluss auf Codezeilen Haben sterben. Insbesondere Sind Rückschlüsse Auf die investierte Arbeitszeit Geist frei meistens.

Auch bei Verwendung von Logical Lines of Code (alloc) hangt das Deschamps war unter Einer anweisung zu verstehen ist Und wie Komplexität Thunders Elbe zu beurteilen ist, von der verwendeten Programmiersprache ab sterben. So kann ETWA in Einem Mehrere Bildschirmseiten umfassenden Assembler -Quelltext letztlich das same Programm formuliert sein, Wie in Einigen wenigen Zeilen Wacholder Höher Programmiersprache .

Abhängig vom Programmierer und die verwendeten Formatierungsrichtlinien Kann das obige beispiel in following, programmtechnisch gesehen vollkommen gleichwertigen Quelltext umformuliert werden:

1 / * Wer segelt das? * /
2 public Hohlraum ausgabeEinsBisHundert () {
3 für ( int in = 1 ; in <= 100 ; in ++) System . aus . drucken ( "" + i ); // Hier die Ausgabe der Zahlen aus der Schleife
4 }

Nun Besteht die Quelltext aus vier physischen Codezeilen (LOC), dreht SLOC, je nach Berechnung eines bis two Kommentar Lines of Code (CLOC) Ein Nicht-Kommentarzeile of Code (auf Methodenebene) und weiterhin Zwei logistisch chen Programmzeilen (alloc).

Als Targeted Code Reduction Reduction Targeting Tool, das die Complexität des Programs vergleicht, wurde die Productivity Unit allein verwendet, um Einfluss zu haben. Weniger Sailing Code can somit durch hoehe Aufwände verwerten.

Beispiele

Hier finden Sie die besten verfügbaren Programme für Programme in verschiedenen Programmen von Betriebssystemen und Anwendungen .

System SLOC
(in Mio.) [2]
Microsoft Windows
Windows NT 3.1 (1993) 4.5
Windows NT 3.5 (1994) 7.8
Windows NT 4.0 (1996) 11.12
Windows 2000 (2000) > 29
Windows XP (2001) 40
Windows Server 2003 (2003) 50
Debian
Debian 2.2 (2000) 55-59 [3] [4]
Debian 3.0 (2002) 104 [4]
Debian 3.1 (2005) 215 [4]
Debian 4.0 (2007) 283 [4]
Debian 5.0 (2009) 324 [4]
Andere Betriebssysteme
Opensolaris 9.7
FreeBSD 8.8
Mac OS X Tiger 86 [5]
Linux Kernel
Linux Kernel 2.6.0 5.2
Linux Kernel 2.6.29 11.0
Linux Kernel 2.6.32 12.6
Linux-Kernel 3.2 15 [6]
Linux Kernel 3.6 15,9 [7]
Linux-Kernel 4.2 > 20 [8]
Andere Software
SAP NetWeaver 2007 238 [9]

Literatur

  • SH Kan. 2002. Metriken und Modelle in Software Quality Engineering . 2. Ausgabe. Addison-Wesley.
  • Harry Seid , Richard Seidl, Manfred Baumgartner: Software in Zahlen – Die Vermessung von Applikationen . 1. Auflage. Carl Hanser Verlag , 2010, ISBN 978-3-446-42175-2 .

Weblinks

  • CODECOUNT Toolset (Rapportung / Registrierung erforderlich)

Einzelstunden

  1. Hochspringen↑ Steve McConnell: Code Complete Ein praktisches Handbuch für den Softwarebau . 2. Auflage. Microsoft Press, 2004, ISBN 978-0-7356-1967-8 , 20.5 Das allgemeine Prinzip der Softwarequalität, S. 514 (Englisch, Sätze: „Die branchenübliche Produktivität eines Softwareprodukts beträgt etwa 10 bis 50 Zeilen Liefercode pro Person pro Tag (einschließlich aller nicht kodierenden Gemeinkosten) „).
  2. Hochspringen↑ Wie viele Zeilen Code in Windows? . Knowing.NET. 6. Dezember 2005. Abgeraufen am 14. Mai 2014.
  3. Hochspringen↑ Jesús M. González-Barahona, Miguel A. Ortuño Pérez, Pedro de las Heras Quirós, José González Centeno, Vicente Matellán Olivera: Zählen Kartoffeln: die Größe von Debian 2.2 . Archiviert vom Original am 4. Juli 2008. Abgeraufen am 2. Mai 2013.
  4. ↑ hochspringen nach:a e Gregorio Robles Debian Counting . Abgerufen am 2. Mai 2013.
  5. Hochspringen↑ Steve Jobs: Live aus der WWDC 2006: Steve Jobs Keynote . 7. August 2006. Abgerufen am 16. Februar 2007: „86 Millionen Zeilen Quellcode die portiert wurde auf eine völlig neue Architektur mit Null Schluckauf laufen“
  6. Hochspringen↑ Greg Kroah-Hartman, Jonathan Corbet, Amanda McPherson: Linux-Kernel-Entwicklung: Wie schnell geht es, wer macht es, was macht es und wer fördert es? ( PDF ; 0.6 MB) Linux Foundation . März 2012. Abgerufen am 8. Januar 2013.
  7. Hochspringen↑ Thorsten Leemhuis: Die Neuerungen von Linux 3.6 . heise online. 1. Oktober 2012. Abgerufen am 2. Mai 2013.
  8. Hochspringen↑ Thorsten Leemhuis: Linux Kernel 20-Millionen-Zeilen-Marke durchbricht sterben . heise online. 30. Juni 2015. Abgerufen am 1. Juli 2015.
  9. Hochspringen↑ Was SAP über ABAPs Zukunft sagt . Abgerufen am 20. November 2011.