Search

Source Code Optimization

[- Disclaimer -] 아래 내용은 정보보안 공부 목적으로 작성된 것이나, 이를 토대로 허가되지 않은 대상에 실습을 진행할 경우 해킹 시도로 간주하여 법적 처벌을 받을 수 있음을 알려 드립니다.
Source Code Optimization (=Source Code 최적화)
✦ Bad Code 배제 및 Clean Code로 작성/수정하여 성능 개선
✧ Bad Code: Logic 복잡 및 이해가 어려운 스파게티 Code, 외계인 Code
✧ Clean Code: 누구나 이해 가능한 단순 명료 Code
Clean Code 작성 원칙
✦ 가독성, 단순성, 의존성 배제, 중복성 최소화, 추상화
Source Code 최적화 유형
✦ Class 분할 배치
✧ 응집도를 높이고 작은 크기로 작성
✦ Loosely Coupled (=느슨한 결합)
✧ Interface Class 사용, 추상화된 자료 구조와 Method 구현
✦ Coding 형식 준수
✧ 줄바꿈, 개념적 유사성 높은 종속 함수 사용, Caller 선배치 및 Callee 후배치, 함수 맨 처음 위치에 지역 변수 선언
✦ 좋은 Naming 사용
✧ 기억 쉽고 발음 쉬운 접두어를 변수명 및 함수명으로 사용
✦ 적절한 주석 사용
Source Code 품질 분석 Tool
✦ Coding Style, Coding 표준, 복잡도, 메모리 Leak, Thread 결함 등 발견
✦ 정적 분석 Tool
✧ pmd, cppcheck, SonarQube, checkstyle, ccm, cobertura 등
✦ 동적 분석 Tool
✧ Avalanche, Valgrind 등