소스코드 품질 분석 편집하기
IT위키
편집을 취소할 수 있습니다. 이 편집을 되돌리려면 아래의 바뀐 내용을 확인한 후 게시해주세요.
최신판 | 당신의 편집 | ||
3번째 줄: | 3번째 줄: | ||
소스 코드의 코딩 스타일, 코드에 설정된 코딩 표준, 코드의 복잡도, 코드에 존재하는 메모리 누수 현상, 스레드 결함 등을 발견하기 위한 과정 | 소스 코드의 코딩 스타일, 코드에 설정된 코딩 표준, 코드의 복잡도, 코드에 존재하는 메모리 누수 현상, 스레드 결함 등을 발견하기 위한 과정 | ||
*정적 분석과 동적 분석으로 구분 | * 정적 분석과 동적 분석으로 구분 | ||
==정적 분석== | == 정적 분석 == | ||
*작성한 소스 코드를 실행하지 않고 코딩 표준이나 코딩 스타일, 결함 등을 확인하는 코드 분석 | * 작성한 소스 코드를 실행하지 않고 코딩 표준이나 코딩 스타일, 결함 등을 확인하는 코드 분석 | ||
*비교적 애플리케이션 개발 초기의 결함을 찾는데 사용되고, 개발 완료 시점에서는 개발된 소스 코드의 품질을 검증하는 차원에서 사용 | * 비교적 애플리케이션 개발 초기의 결함을 찾는데 사용되고, 개발 완료 시점에서는 개발된 소스 코드의 품질을 검증하는 차원에서 사용 | ||
*동적 분석 도구로는 발견하기 어려운 결함을 찾아내고, 소스 코드에서 코딩의 복잡도, 모델 의존성, 불일치성 등을 분석 가능 | * 동적 분석 도구로는 발견하기 어려운 결함을 찾아내고, 소스 코드에서 코딩의 복잡도, 모델 의존성, 불일치성 등을 분석 가능 | ||
====분석 도구==== | ==== 분석 도구 ==== | ||
pmd, cppcheck, SonarQube, checkstyle, ccm, cobertura 등 | pmd, cppcheck, SonarQube, checkstyle, ccm, cobertura 등 | ||
{| class="wikitable" | {| class="wikitable" | ||
37번째 줄: | 37번째 줄: | ||
|} | |} | ||
==동적 분석== | == 동적 분석 == | ||
작성한 소스 코드를 실행하여 코드에 존재하는 메모리 누수, 스레드 결함 등을 분석 | 작성한 소스 코드를 실행하여 코드에 존재하는 메모리 누수, 스레드 결함 등을 분석 | ||
====분석 도구==== | ==== 분석 도구 ==== | ||
*Avalanche | * Avalanche | ||
*Valgrind | * Valgrind | ||
== | == 참고 문헌 == | ||
* 블로그 https://inreve.tistory.com/20 | |||
*블로그 https://inreve.tistory.com/20 |