∙ 다양한 C++ 프로그램 개발 환경
- visual Studio
- code::Blocks
- Dev C++
- Xcode (mac os)
∙ 코딩 컨벤션
- 가독성 있는 코드를 작성하기 위한 공통의 코드 작성 가이드라인(코딩 스타일)
- 여러 명의 개발자가 소스 코드를 공유하거나 함께 관리할 때 유용
- 코딩을 잘하는지 판단하는 척도로도 사용
- 명명 규칙
> 타입, 변수 함수 등의 이름은 의미를 알 수 있는 형태로 구성
> 너무 단순하거나 또는 지나치게 정확한 이름은 자제
- 타입 이름(클래스, 구조체, 타입 별칭, 열거형 등)
> 타입 이름은 대문자로 시작
> 여러 단어로 이루어진 이름의 경우, 각 단어는 대문자로 시작하고 밑줄을 사용하지 않음
- 변수 임 & 함수이름
> 변수와 함수 이름은 모두 소문자와 밑줄을 사용
> 상수, 매크로 이름은 대문자와 밑줄로 구성
∙ 시간 복잡도 (time complexity)
- 입려의 크기가 커짐에 따라 연산 시간(연산 횟수)이 얼마나 증가하는지를 근사적으로 표현
> 연산의 실행 횟수를 입력 데이터의 크기(n)에 관한 함수 형태로 표현
> 알고리즘을 직접 구현하지 않고도 알고리즘의 효율성을 가늠할 수 있음
- 실행 시간 측정 방법의 한계 : 알고리즘을 구현한 프로그램의 실행 시간은 실행 환경(하드웨어, 운영체제, 언어, 컴파일러 등)에 따라 달라지므로 절대적인 실행 시간 비교는 파악에 한계가 있음
∙ 빅오 표기법 (big-O notation) : O(f(n))
- 대표적인 시간 복잡도 표현 방법
- 연산 횟수를 구체적인 수식으로 표현하지 않고, 최고차항의 차수만으로 표현
ex) 4n^2 +2n + 5 -> O(n^2) 으로 표현
- 점근 표가법의 한 방법으로 실행 시간의 상한을 표현