Notice
Recent Posts
Recent Comments
Link
250x250
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | ||||||
| 2 | 3 | 4 | 5 | 6 | 7 | 8 |
| 9 | 10 | 11 | 12 | 13 | 14 | 15 |
| 16 | 17 | 18 | 19 | 20 | 21 | 22 |
| 23 | 24 | 25 | 26 | 27 | 28 | 29 |
| 30 |
Tags
- homogenous
- 맥케이브
- homogeinous
- 자격증
- SQL
- 컴퓨터구조
- Linux
- Computer
- 알고리즘
- 네트워크 충돌
- AI
- humble
- sam2
- 회전 복잡도
- 리눅스
- robotics
- sort
- segmentation
- 정렬
- 정보처리기사
- 3dof
- 합병
- 기구학
- Coding
- Java
- 정처기
- ROS2
- CentOS
- 명령어
- MIPS
Archives
- Today
- Total
UTF-404
소스 코드 품질 분석!! 본문
728x90
💡 소스 코드 품질 분석 개념
소스 코드 품질 분석은 소스 코드에 대한 코딩 스타일, 설정된 코딩 표준, 코드의 복잡도, 코드 내에 존재하는 메모리 누수 현황, 스레드의 결함 등을 발견하기 위한 활동이다.
📍 소스 코드 품질 분석 도구 유형
| 유형 | 설명 |
| 정적 분석 도구 | 작성된 소스 코드를 실행시키지 않고, 코드 자체만으로 코딩 표준 준수 여부 , 코딩 스타일 적성 여부, 잔존 결함 발견 여부를 확인하는 코드 분석 도구 |
| 동적 분석 도구 | 애플리케이션을 실해앟여 코드에 존재하는 메모리 누수 현황을 발견하고, 발생한 스레드의 결함 등을 분석하기 위한 도구 |
💡 소스 코드 품질 분석 도구
📍 정적 분석 도구
| 도구명 | 설명 |
| pmd | 자바 및 타 언어 소스 코드에 대한 버그, 데드 코드 분석 도구 |
| cppcheck | C/C++ 코드에 대한 메모리 누수, 오버플로우 등 문제 분석 도구 |
| SonarQube | 소스 코드 품질 통합 플랫폼, 플러그인 확장가능 |
| checkstyle | 자바 코드에 대한 코딩 표준 검사 도구 |
| ccm | 다양한 언어의 코드 복잡도 분석 도구, 리눅스, 맥 환경 CLI 형태 지원 |
| cobertura | jcoverage 기반의 테스트 커버리지 측정 도구 |
📍 동적 분석 도구
| 도구명 | 설명 |
| Avalanche | Valgrind 프레임워크 및 STP 기반 소프트웨어 에러 및 취약점 동적 분석 도구 |
| Valgrind | 자동화된 메모리 및 스레드 결함 발견 분석 도구 |
💡 소스 코드 복잡도 분석
📍 맥케이브 회전 복잡도(McCabe Cyclomatic Complexity) 개념
맥케이브 회전 복잡도는 소프트웨어의 제어 흐름을 그래프로 표현하고 소스 코드의 복잡도를 정량적으로 나타내는 지표이다.

728x90
'정보처리기사' 카테고리의 다른 글
| 소프트웨어 연계 테스트 (0) | 2024.03.20 |
|---|---|
| 내/외부 인터페이스 기술 표준 (0) | 2024.03.20 |
| 정렬 알고리즘 알아보기 (0) | 2024.03.07 |
| 해싱함수와 검색 알고리즘 (0) | 2024.03.06 |
| 알고리즘에 대해 알아보기!! (0) | 2024.02.29 |