티스토리 뷰

Language/C 언어

C언어의 역사

데브훈96 2020. 2. 5. 01:01

안녕하세요, IT디자이너입니다. 

 

첫 포스팅은 C언어의 문법이나 기술이 아닌 C언어의 역사에 대해서 포스팅하겠습니다.

 

모든 기술은 필요에 의해서 탄생한다고 생각합니다. C언어 또한 인간의 필요에 의해서 개발된 도구 중 하나입니다. 

 

 

C언어를 개발한 켄톰슨과 데니스리치

C언어의 탄생배경으로는 "UNIX"가 결코 빠질 수 없는 키워드이며, 탄생의 이유입니다. 

 

켄 톰슨과 데니스 리치는 벨 연구소에서 "UNIX"운영 체제를 개발할 때 "어셈블리어"라는 "Low-Level 언어"를 사용하였습니다.

 

동일한 기능을 수행하는 어셈블리어와 C언어의 소스코드

 

하지만, 어셈블리어는 특정 하드웨어에 종속적인 언어로서 이 언어로 작성된 프로그램은 다른 하드웨어로 이식할 수 없다는 단점이 있었습니다.  하나의 기능을 하는 프로그램을 CPU의 종류만큼 여러 번 작성해야한 하는 것입니다. 

 

즉, 새롭고 쉽고 간편하고 어떠한 작업을 할 때 조금 더 효율적인 도구가 필요했던 것입니다. 그리하여 ALGOL 60부터 CPL, BCPL을 거쳐 개선되고 B언어를 개발 후 1972년에 벨 연구소에서 데니스리치와 켄톰슨이 B언어를 좀 더 개선하여 C언어가 탄생하였습니다.

 

C언어의 특징

1. C언어로 작성된 프로그램은 다양한 하드웨어로의 이식성이 좋습니다.

2. C언어는 절차 지향 프로그래밍 언어로, 코드가 복잡하지 않아 상대적으로 유지보수가 쉽습니다. // 객체지향보다는 유지보수성이 안좋다.

3. C언어는 저급 언어의 특징을 가지고 있으므로, 어셈블리어 수준으로 하드웨어를 제어할 수 있습니다.

4. C언어는 코드가 간결하여, 완성된 프로그램의 크기가 작고 실행 속도가 빠릅니다.

 

 

C언어의 단점

1. C언어는 저급 언어의 특징을 가지고 있으므로, 자바와 같은 다른 고급 언어보다 배우기가 쉽지 않습니다.

2. C언어는 다른 언어와 달리 시스템 자원을 쉽게 제어할 수 있으므로, 프래그래밍하는데 세심한 주의를 기울여야 합니다. 

 

 

 

이렇게 기술의 역사를 알게되면, 그 기술의 탄생 이유에서 해당 기술의 이점과 사용방법을 조금 더 이해하기 쉽게 다가갈 수 있게됩니다.

 

공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
TAG more
«   2024/10   »
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31
글 보관함