"LOC, 물리LOC, 논리LOC"의 두 판 사이의 차이

잔글 (봇: 자동으로 텍스트 교체 (-== 참고 자료 == +==참고==))
1번째 줄: 1번째 줄:
;source lines of code; SLOC, lines of code; LOC
;source lines of code; SLOC, lines of code; LOC
;소스코드 라인수, 소스코드 행수
;소스코드 라인수, 소스코드 행수, 코드라인 수


;physical LOC
;physical LOC
10번째 줄: 10번째 줄:
==LOC==
==LOC==
* 소스코드의 행수
* 소스코드의 행수
* 프로그램을 구성하는 최소명령단위인 문장(Statement)들의 수
:주석문(Comments)을 제외한 실행문, 환경선언문, 데이터선언문 등
* 소프트웨어 규모를 나타내는 지표의 하나
* 소프트웨어 규모를 나타내는 지표의 하나
* 단위: KLOC(1000행), MLOC(100만행)
* 단위: KLOC(1000행), MLOC(100만행)

2018년 1월 16일 (화) 13:53 판

source lines of code; SLOC, lines of code; LOC
소스코드 라인수, 소스코드 행수, 코드라인 수
physical LOC
물리LOC
logical LOC
논리LOC

1 LOC

  • 소스코드의 행수
  • 프로그램을 구성하는 최소명령단위인 문장(Statement)들의 수
주석문(Comments)을 제외한 실행문, 환경선언문, 데이터선언문 등
  • 소프트웨어 규모를 나타내는 지표의 하나
  • 단위: KLOC(1000행), MLOC(100만행)
  • 장점: 자동화 가능
  • 단점: 기능 측면 고려 부족

2 물리LOC

  • 텍스트 파일 행수

3 논리LOC

  • 빈줄, 괄호만 있는 행, 주석 제외
  • 한줄에 명령어 2개이면 2행으로 계산

4 계산예시

소스코드 1
for (i = 0; i < 100; i++) printf("hello"); /* 이 소스 코드의 행수는? */
→ 물리LOC = 1
→ 논리LOC = 2
소스코드 2
/* 이 소스 코드의 행수는? */
for (i = 0; i < 100; i++)
{
  printf("hello");
}
→ 물리LOC = 5
→ 논리LOC = 2

5 OS 사례

연도 OS LOC
2003 윈도우 서버 2003 5000만
2005 맥 OS X 10.4 8600만
2012 리눅스 커널 3.6 1590만
2012 데비안 7.0 4억 1900만

6 인용

Measuring programming progress by lines of code is like measuring aircraft building progress by weight.
→ 프로그래밍 과정을 코드 행수로 측정하는 것은 비행기 제작 과정을 무게로 측정하는 것과 같다.

7 같이 보기

8 참고

문서 댓글 ({{ doc_comments.length }})
{{ comment.name }} {{ comment.created | snstime }}