본문 바로가기

IT/Dev

00. 프로그래밍 언어

1. 프로그래밍 언어 개요

컴퓨터(기계어) -> 저급 언어 -> 고급 언어 -> 사람의 언어

컴퓨터가 이해하기 쉽게 표현된 언어를 저급 언어, 사람이 이해하기 쉬운 언어를 고급 언어라고 한다.

 

2. 언어별 특징

1) 저급 언어

저급언어 또는 로우 레벨 프로그래밍 언어(Low Level Programming Language)라고 한다.

컴퓨터가 이해하기 쉬운 구조로, 처리속도가 빠른게 특징이다.

저급 언어는 기계어와 어셈블리어(Assembly Language)로 구분할 수 있다.

 

 기계어는 비트 단위로 작성된 언어로, CPU가 직접 읽고 실행할 수 있다. 요즘 기계어를 직접 입력해서 프로그램을 짜는 경우는 거의 없으며 어셈블리어로 작성한 뒤, 치환하는 방식이 있다.

어셈블리어(Assemble Language)는 고급언어와 기계어 사이의 언어로, 어셈블러를 통해 기계어로 변환하는 역할을 한다.

 

2) 고급 언어

고급언어 혹은 하이 레벨프로그래밍 언어(High Level Language)라고 한다.

저급 프로그래밍 언어보다 가독성이 좋다. 컴파일러나 인터프리터를 통해 저급 언어로 실행 된다.

 

프로그래밍 언어 사용 현황 (2020. 06) - TIOBE

 

Jun 2020 Programming Language Ratings 용도
1 C 17.19% 하드웨어 제어
2 Java 16.10% 웹, 모바일 서버
3 Python 8.36% 웹 프로그래밍 외 다양한 용도
4 C++ 5.95% 하드웨어 제어
5 C# 4.73% .NET Framework
6 Visual Basic 4.69% Windows 프로그래밍
7 JavaScript 2.27% 웹 프로그래밍
8 PHP 2.26% 웹 프로그래밍
9 R 2.19% 통계 및 그래프
10 SQL 1.73% 데이터베이스 처리용
11 Swift 1.46% IOS 개발
12 Go 1.02% Docker, k8s 개발 언어
13 Ruby 0.98% 일본에서 생산된 언어, Python과 유사
14 Assembly language 0.97% 임베디드 개발을 위한 언어
15 MATLAB 0.90% 공학용 어플리케이션 소프트웨어
16 Perl 0.82% 웹 프로그래밍 용, 현재는 PHP를 대부분 사용한다.
17 PL/SQL 0.74% 오라클 SQL용
18 Scratch 0.73% 교육용 프로그래밍 언어
19 Classic Visual Basic 0.65% Windows 프로그래밍
20 Rust 0.64% C/C++와 동등한 수준의 속도를 달성, 메모리 오류를 완전히 없애는 것을 목표