C언어는 저학년 때 컴퓨터공학 수업에서 꼭 듣고 가는 수업입니다. 대부분의 학생들이 왜 C언어를 배우는지도 잘 모를 뿐만 아니라 보통 포인터 챕터에 들어가면 머리를 싸매고 어려워서 대부분 포기합니다.
앞으로 C언어를 보다 쉽게 공부를 정리하며 풀어가면서 조금 더 흥미를 가질 수 있는 기회를 만들고자 포스팅을 시작하였습니다.
이번 포스트에서는 C언어의 탄생 및 간단한 소개를 하려고 합니다.
벌써부터 노잼주의보 및 지루함이 느껴질 수도 있지만 아는 것과 모른 것의 차이는 격차가 나중에 커질 수도 있습니다. 그리고 역사 및 간단한 개요를 배우시면 나중에 다른 사람들 앞에서도 당당하게 소개할 수 있을 것 같습니다.
C 언어가 만들어진 과정과 특징을 알면 C 언어의 문법 구조를 이해하는 데 있어서 도움이 됩니다. C언어의 문법을 배우기 전에 간략하게 C언어의 역사에 대하여 간단히 알아보겠습니다.
C언어의 탄생
1960년대 개발되었던 운영체제들은 하드웨어 종속적인 언어를 사용하여서 개발되었습니다. 따라서 하드웨어가 바뀌면 운영체제의 많은 부분을 디시 개발해야 했습니다. 벨 연구소의 데니스 리치(Dennis Ritchie)와 켄 톰슨(Ken Thompson)은 이런 불편함을 없애고자 하드웨어가 변경되어도 프로그램을 다시 작성하지 않아도 되는 운영체제를 만들기 위해 노력하였습니다. 1970년에 켄 톰슨은 B 언어를 만들었지만, 이 언어도 하드웨어로부터 독립된 운영체제를 만드는 데 있어 적합하지 않았습니다. 1972년, 켄 톰슨은 데니스 리치와 함께 새로운 언어를 개발하였고, 이것이 바로 C언어입니다.
C언어는 하드웨어의 세밀한 부분까지 제어할 수 있으며, 특정 하드웨어를 직접 표현하지 않도록 문법을 구성하였기 때문에 하드웨어에 독립된 형태로 프로그램을 개발할 수 있었습니다. 데니스 리치와 켄 톰슨은 C 언어를 90% 이상 사용하여 유닉스(UNIX)라는 운영체제를 만들었고, 유닉스는 다양한 하드웨어에서 동작할 수 있는 운영체제로 자리를 잡게 되었습니다.
※ 오늘은 C언어 프로그래밍의 기초인 'C언어의 소개 및 개요'에 대하여 알아보았습니다.
이 포스트는 학부에서 제공하는 기본적인 컴퓨터 공학 강의와 책들을 토대로 알기 쉽게 내용을 작성하였습니다. 하지만 계속 더 유익하고 논문 및 전문 서적을 읽어가며 더 추가돼야 할 내용이 있으면 C 언어 프로그래밍 포스트와 콘텐츠들을 계속 고도화하는 방식으로 진행하려고 합니다.
'프로그래밍 > C 언어' 카테고리의 다른 글
[C언어] 일상생활에서 알고리즘 적용 (0) | 2019.09.29 |
---|---|
[C 언어] 최초의 알고리즘 (0) | 2019.09.28 |
[C언어] C언어 프로그램의 Key, 알고리즘 (0) | 2019.09.28 |
[C언어] C언어의 서술 형식 (0) | 2019.09.27 |
[C언어] C언어의 특징 (0) | 2019.09.25 |