C언어가 프로그래밍언어 중 가장 기본이 되는 언어라는 사실과 지금 인기 있는 자바, 파이썬 등등의 언어에도 많은 영향을 주고 있다.
그래서 배우기가 제일 어렵지만 한 번 배우고 나면 다른 언어를 쉽게 배울 수 있다. 이런 점에서 기본적으로 C언어를 배우기로 결심했다.
하지만 나는 이제 막 ;개발자란 직업은 대략 이런걸 하는 사람이다?!' 정도로만 알고 있기 때문에 C가 기본이라는 것 까진 알겠는데..
C를 이름으로 하고 있는 C++이나 C# 같은건 비슷한건지 차이가 있는지 궁금증해졌다. 그렇게 3가지 언어의 차이점을 정리해준 영상을 발견했다.
C언어
- 47년전 만들어진 언어
- 최근에 만들어진 많은 프로그래밍 언어들에게 영향을 줌
- 개발 당시 컴퓨터 속도가 빠르지 않았기 때문에 리소스가 많이 없는 기계에서 작동 시에 유용하게 만들어짐
- ex. 화성탄사선 C언어로 개발
- 수동으로 이루어지기 때문에 기계에 가까운 언어. 기계에 가까운 만큼 컴퓨터에서 속도가 가장 빠름
C++
- C의 확장판
- C에 Class로 객체지향 추가
- '타입스크립(type이 추가 된 자바스크립트) 같은 느낌
- C++ 개발자도 C의 대체재로 생각하고 개발한만큼 C와 비교해서 컴퓨터에서의 속도와 하드웨어와의 밀접성도 비슷함
- 즉, 객체지향 프로그램을 만드는건 C++, 절차지향 프로그램은 C
C#
- 마이크로소프에서 개발
- 이름에 C가 들어갈 뿐, JAVA에 가까움
- 기업용 언어로 한국에서는 JAVA, 서양에서는 C#을 주로 사용
- UNtiy3D(비디오게임 엔진)에서 사용
- 엑스박스 플레이스테이션 앱(안드로이드, IOS) 게임들 전부 다 만들 수 있음
- 컴파일 등의 도움을 많이 받아 수동적으로 이루어지지 않음. C에 비교하면 속도가 빠르지 않음
- 자바, 자바스크립트, 타입스크립트 등을 알고 있다면 1~2주 안에 배울 수 있을 정도로 비슷
- 개발자가 사용하기 편하기 때문에 빠르게 익히고 개발 가능
결론
- C언어와 C++은 객체지향 정도의 차이 빼면 거의 비슷하다
- C언어와 C++은 작은시스템이고 컴퓨터에서 속도가 빠른 것이 장점
- 하드웨어와 밀접성 높은 개발 : C언어.
- 하드웨어 밀접성 높고 객체지향 사용하고 싶으면 : C++
- 기업용 시스템을 빠르게 개발하고 싶으면 : C#
- 미국이나 유럽쪽 취업, 비디오게임 개발 생각 있으면 : C#
'이것저것' 카테고리의 다른 글
2021년 크리스마스 기념 트리 만들기(feat.c++,python) (0) | 2021.12.23 |
---|---|
클론코딩 공부하기 (0) | 2021.08.04 |
개발 배우기가 정말 어려운 이유(Eric Trautman 작성)를 읽고 (0) | 2021.08.02 |
코딩 공부의 시작, 타이핑! (0) | 2020.11.05 |
웹개발 입문 공부 순서 (0) | 2020.11.02 |