프로그래밍 언어의 진화와 C++언어
1950년대부터 어셈블리어의 한계를 극복한 고급 언어들이 개발되기 시작합니다. 1954년에 포트란이 개발되었으며, 1967년에 운영체제나 컴파일러와 같은 시스템 소프트웨어를 작성하기 위한 용도로 BCPL이라는 언어가 개발되었습니다.
1970년에는 BCPL을 개선하여 B언어를 만들었고, 1972년에 유닉스 운영체제(UNIX)를 작성하기 위해 B언어를 개선하여 C언어를 개발하였습니다.
이후 C언어는 가장 강력한 언어로 프로그래밍 언어로 많이 사용되고 있습니다. 소프트웨어 개발뿐만 아니라 게임, 임베디드 등 다양한 응용프로그램 개발에 사용되어지고 있습니다.
기술의 개발로 인해 소프트웨어의 크기도 커지게 되었습니다. C언어로 구현하기에는 코드관리에 한계가 있었고, 이를 개선하기 위해 기존 C언어에 객체 지향 특성을 가지게 한 C++언어가 탄생하였습니다.
객체 지향 프로그래밍 기법은 클래스와 상속을 이용하여 소프트웨어의 재사용성을 높이고 소프트웨어의 개발과 코드 관리를 용이하게 합니다.
C++언어는 C언어의 특성을 가지고 있기 때문에 이미 만들어진 C 언어 소스 코드로 조금만 수정하면 C++ 프로그램으로 재사용할 수 있고, 이미 컴파일된 C목적 코드도 C++프로그램에서 링크하여 사용할 수 있습니다.
객체 지향 특성의 장점은 다른 언어가 생기는데 기여를 한 점입니다. 1995년에는 C++의 영향을 받은 대표적인 객체 지향 언어 중 하나인 JAVA가 제임스 고슬링에 의해 만들어졌습니다.
2000년에는 마이크로소프트에서 C++과 JAVA를 섞은 C#언어를 만들었습니다.. NET 프레임워크가 설치된 플랫폼 상에서 실행됩니다.
표준화된 c++언어
소프트웨어 개발에서 표준은 중요합니다. 1998년 미국 국립 표준원인 ANSI(American National Standards Institute)에서 c++언어에 대한 표준을 정하였습니다. 현재 C++ 표준은 ISO/IEC14882 문서에 작성되어 있습니다.
현재 대부분의 컴파일러 회사들은 표준을 따르는 C++ 컴파일러를 제작 공급하고 있습니다. 그러므로 표준에 따라 만들어진 C++프로그램 소스는 모든 C++컴파일러에 의해 컴파일 가능하며, 모두 동일한 실행 결과를 보장합니다.
볼랜드 사의 C++, 마이크로소프트의 비주얼 C++ 등 컴파일러를 제작하는 대부분의 회사들은 표준 C++ 기능에 자신만의 기능을 첨가합니다.
현재 PC에서 많이 사용하는 비주얼 C++의 경우, C++ 표준에 자신만의 독특한 기능을 추가하고 있기 때문에 표준에 대한 이해 없이 프로그램 작성 시에 컴파일되지 않는 문제가 나타 날 수 있습니다.
비주얼 C++ 도구를 이용하며 C++ 언어 표준에 준하여 프로그래밍하면 컴파일러나 플랫폼에 상관없이 컴파일되고 실행 가능합니다.
C++ 언어로 소프트웨어를 개발하고자 한다면 ANSI/ISO 표준의 C++에 대한 이해가 필요합니다.
댓글