본문 바로가기

C++

C, C++의 철학과 역사

728x90

C와 C++의 철학 : "trust the programmer"

- C와 C++은 프로그래머에게 엄청난 자유도를 부여한다. 

- C와 C++ 프로그래밍 시 해야할 것과 하지말아야 할 것을 잘 지켜야 한다.

- 강점 : high performance, precise control over memory and other resources

- Application : video games, real-time systems, high-performance, graphical applications and simulations, embedded software... 등


C의 역사

- developed by Dennis Ritchie at Bell labs in 1972.

- systems programming langauge(OS를 프로그래밍하는 언어) 용도로 개발됨.

- C는 assembly와 다르게 좋은 portability를 자랑한다. HW에 따라 소스 코드를 재작성할 필요 없다.

- C가 등장하기 전에는 OS가 assembly language로 작성되었는데 C가 등장하고부터 OS가 C로 작성되기 시작했다. 특히 Unix에 빠르게 도입되었다.

- 1978년에 Dennis Ritchie가 "The C Programming Language"라는 책을 기술

- 이 책은 C언어에 대한 spec을 담았고 표준이 되기 시작했다.

- 1989년에 American National Standards Institute(ANSI)가 C89 표준(ANSI C)을 배포했다. 

- 1990년에 International Organization for Standardization(ISO)가 ANSI C를 채택하고 minor 수정을 가한 후 C90표준을 배포했다.

- 이후 컴파일러들은 ANSI C/C90와 호환되도록 개발되었다.


C++의 역사

- developed by Bjarne Stroustrup at Bell labs in 1979.

- added new features to C.

- C의 부분집합은 아니다. C++에 없는 기능이 C99에 있다.

- 객체 지향 언어

- 1998년에 ISO에 의해 표준화되었다. 

- 2003년에 C++03 표준이 배포되었다.

- 그 이후 C++11, C++14, C++17, C++20, C++23 표준이 배포되었다.


Reference

[1] https://www.learncpp.com/cpp-tutorial/introduction-to-cplusplus/

 

 

'C++' 카테고리의 다른 글

build, clean, rebuild, compile, run/start  (0) 2024.02.19
What is Project and Workspace(or Solution)?  (0) 2024.02.19
C++ IDE 설치하기  (1) 2024.02.19
C, C++ 개발 workflow  (0) 2024.02.19
Compiler vs Interpreter  (0) 2024.02.18