프로그래밍 절차
Programming Procedure
- 프로그래머가 작성한 코드가 가공과정을 거쳐 프로그램으로 탄생하기까지의 일련의 과정
1. 소스 코드(Source code) 생성
- 프로그래머가 IDE * 나 텍스트 에디터 * 를 이용하여 프로그래밍 언어를 통해 프로그램을 작성하게 되는데,
여기서 작성된 프로그램 파일을 원시코드 혹은 소스 코드라 함
* IDE (Integrated Develop Enviornments : 통합 개발 환경)
- 텍스트에디터, 컴파일러, 링커, 프로젝트 관리 및 디버깅 기능과 같은 리소스를 종합적으로 갖춘 시스템
- Visual Studio, X Code, Eclipse, IntelliJ IDEA 등
* 텍스트 에디터 (Text editor)
- vi 에디터 등
2. 소스코드 컴파일(Compile) 및 목적 코드(Object code) 생성
- 컴파일러(Compiler)를 통해 소스코드를 기계어인 이진코드(Binary code)로 컴파일(Compile, 변환)함
- 이렇게 변환된 소스코드를 목적코드(Object code)라 함
- 컴파일 과정에서, 컴파일러는 프로그래밍 언어 문법을 위반한 부분을 발견하면 컴파일을 중단하고 에러 메세지를 출력함
* Stroustrup 은 C++ 소스 코드를 목적 코드로 직접 변환하는 C++컴파일러를 개발하는 대신,
C++소스 코드를 C 소스 코드로 변화하는 "cfront" (C Front End) 라는 컴파일러를 개발했다.
3. 링킹 (Linking) 및 실행 코드(Executable code) 생성
- 링커(Linker)를 통해 목적코드에 부가적인 코드 * 를 링크시킴(Linking)
- 이렇게 최종적으로 생성된 파일을 실행 코드라 함
* 부가적인 코드
- 프로그래머가 호출한 라이브러리
- 프로그램 실행 시 필요한 시동코드(Start-up code)
소스코드 확장자
Source Code Extension
C++ Compiler | Source code Extension |
UNIX | C, cc, cxx, c |
GNU C++ | C, cc, cxx, cpp, c++ |
Digital Mars | cpp, cxx |
Borland C++ | cpp |
Watcom | cpp |
Microsoft Visual C++ | cpp, cxx, cc |
Freestyle CodeWarrior | cpp, cp, cc, cxx, c++ |
확장자의 형태
- (파일명) . (확장자)
- Period (=온점) 전후로 파일명과 확장자가 구분됨
Ex. HelloWorld . cpp
여기서,
HelloWorld = 소스코드 파일명
cpp = 확장자 이다.