TIOBE Index에서 발췌한 2022년 8월 프로그래밍 언어 인기 순위입니다. 우리에게는 익숙한 Python, C, Java 등이 상위권에 랭크된 모습을 볼 수 있습니다.
위의 순위는 프로그래밍 언어를 이용하는 엔지니어의 수, 해당 프로그래밍 언어 관련 강좌 및 홈페이지의 수, 검색엔진에서 프로그래밍 언어가 검색된 횟수를 토대로 순위를 산정합니다.
이 포스팅은 1위 ~ 4위 까지의 프로그래밍 언어의 특징을 소개합니다.
1. Python
1.1. 객체지향 언어, 스크립트 언어, 인터프리터 언어이다.
- 파이썬은 스크립트 언어로 컴파일 과정 없이 인터프리터에 의하여 실행되므로, 컴파일 언어에 비해서는 속도가 느린 편이다.
1.2. 동적 타입 언어이다.
- 변수의 자료형을 따로 지정하지 않고 선언하는 것으로 값을 지정할 수 있다. 따라서 변수의 자료형은 코드가 실행되는 시점에 결정된다.
1.3. 배우기 쉬운 편이며 생산성이 높다.
1.4. 활발한 생태계가 구축되어 있다.
1.5. Garvage Collection을 지원한다.
- 더 이상 참조되지 않는 불필요한 메모리를 알아서 정리해주는 Garbage Collection(GC) 지원.
1.6. 딥러닝, 빅데이터, AI 개발 등에 사용된다.
2. C
2.1. 절차지향형 언어이다.
2.2. 컴파일러 언어이다.
- 인터프리터 언어에 비해 실행 속도가 빠르다.
2.3. Low Level 언어의 특징을 가진다.
- 어셈블리어 수준으로 하드웨어를 제어할 수 있다. 따라서 하드웨어 제어 시스템 개발 등에 C언어가 주로 사용되고 있다. 또한 Low Level언어의 특징으로 다른 언어보다 학습장벽이 높은 편에 속한다.
2.4. 시스템 자원을 개발자가 직접 제어할 수 있다.
- 시스템 자원을 자동으로 관리해주는 언어에 비해, C언어는 개발자가 시스템 자원을 직접 제어할 수 있다.
3. Java
3.1. 객체지향 언어이다.
- Java는 C++과 마찬가지로 객체지향 언어이다. 하지만 설계 목표의 차이에 따른 차이가 존재한다. Java는 보안, 이식성, 빠른 개발에 비중을 두었지만, C++는 속도와 C언어와의 하위 호환성에 중점을 두었다. C++가 성능면에선 더 빠른 편이다.
- 3.2. 인터프리터와 컴파일러를 모두 사용한다.
3.3. Garbage Collector가 존재한다.
3.4. 웹 서비스 개발, 안드로이드 앱 개발에 주로 사용된다.
4. C++
4.1. 객체 지향언어이다.
4.2. 타입 체크를 엄격히 한다.
- Runtime Error의 가능성을 줄이고 디버깅을 돕는다.
4.3. 실행시간의 효율성 저하를 최소화한다.
- 인라인 함수의 도입 등 함수 호출로 인한 성능 저하를 막는다.
4.4. 게임 개발에 많이 사용된다.
'Language' 카테고리의 다른 글
[Node.js] .env 파일로 환경변수를 관리 하기 (0) | 2024.06.05 |
---|---|
[Node.js] PostgreSQL로 간단한 웹 데이터 조회하기 (0) | 2024.06.04 |