[WEB] 1. 프로그래밍 언어

gyrud02·2021년 12월 30일
0

이론(THEORY)

목록 보기
12/24

1. 프로그래밍 언어

1) 저급 언어

저급 언어는 기계 중심의 언어라고 할 수 있다. 기계가 직접 알아들을 수 있는 말로 '프로그램 코드를 작성한다'라는 개념이다.

컴퓨터는 전기로 동작하는데 전기 신호인 켜졌다와 꺼졌다 2가지 상태 값으로 동작한다. 보통 숫자로 표현하면 켜졌다는 1, 꺼졌다는 0을 의미한다. 0과 1로 표현되는 숫자를 우리는 2진수라고 한다.

2진수로 이뤄진 값으로 작성하는 프로그래밍 언어를 기계어(Machine Language)라고 한다. 숫자로만 되어 있기 때문에 유지보수가 굉장히 어렵다. 숫자로만 된 프로그래밍 언어는 사용이 굉장히 어렵다. 그래서, 이 숫자로 된 문장과 1:1로 대응하는 기호를 만들고, 그 기호로 프로그래밍을 하게 되었다. 단 기호로 작성된 프로그램은 기계가 바로 알아들을 수 없기 때문에 기호로 작성된 문장들을 원래의 숫자로 바꿔야 하는 과정이 더 필요하게 되었다. 이러한 과정에서 사용되는 도구를 컴파일러(Compiler)라고 말하며, 이러한 기호로 작성된 언어를 어셈블리어(Assembly Language)라고 한다. 현재는 아주 특수한 경우를 제외하고는 기계어와 어셈블리어로 프로그램을 개발하는 경우는 거의 없다. 그만큼 프로그래밍이 어렵고 유지보수가 어렵기 때문이다.

2) 고급 언어

고급 언어는 사람 중심의 언어라고 할 수 있다. 사람이 좀 더 이해하기 쉬운 문법으로 프로그래밍을 할 수 있다. 이런 일이 가능하기 위해선 작성된 소스코드를 번역하는 과정이 필요하다. 이를 컴파일한다고 하며, 이러한 일을 수행하는 것을 컴파일러라고 한다.

앞에서 어셈블리어도 기계어로 컴파일이 된다고 했었다.
컴퓨터 성능이 좋아지고, 컴파일러와 관련된 기술이 발전하면서 사람 중심의 언어로 프로그래밍 할 수 있다고 생각하면 된다.

[ 고급 언어 종류 ]

  • 포트란(FORTRAN) : 최초의 고급언어 중의 하나이며, 과학 계산용으로 주로 사용된다. 현재 공대에서도 많이 사용되고 있다.
  • 코볼(COBOL) : FORTRAN과 더불어 역사가 오래된 언어이다. 일반 업무에서 사용할 목적으로 만들어졌으며, 현재 은행 등에서 사용되고 있다.
  • PROLOG : 논리형 프로그래밍 언어로써, 논리식을 토대로 오브젝트와 오브젝트 간의 관계에 관한 문제를 해결하기 위해 사용된다.
  • C언어 : 1972년 미국 벨 연구소의 데니스 리치에 의해 개발된 고급 언어로써 시스템 프로그래밍에 가장 적합한 평가를 받고 있는 언어이다.
  • Erlang : 스웨덴의 에릭슨에서 개발한 함수형 병행성 프로그래밍 언어이며 통신 인프라를 위한 언어이다.
  • 리스프(Lisp) : LISt Processsor의 약자로 대표적인 함수형 언어이다. 프로그래밍 언어의 역사를 말할 때, 현대의 컴퓨터를 위해 등장한 고급 언어 중 가장 오래된 것이 포트란이고, 두 번째로 오래된 것이 바로 이 리스프이다.
  • 스위프트(Swift) : 2014년 WWDC(Apple WorldWide Developers Conference)에서 공개한 프로그래밍 언어이다. 최근에 만들어진 언어로 현대 프로그래밍 언어의 발전을 대다수 계승한 모던 프로그래밍 언어라고 할 수 있다.
  • 코틀린(Kotlin) : IntelliJ IDEA의 개발사 JetBrains에서 2011년에 개발한 프로그래밍 언어이다. JVM기반의 언어이며 Java와의 상호 운영이 100% 지원된다. Swift와 마찬가지로 현대 프로그래밍 언어의 발전을 대다수 계승한 모던 프로그래밍 언어라 할 수 있다.
  • 클로저(Clojure) : Clojure는 리치 히키(Rich Hickey)가 만든 리스프 프로그래밍 언어의 방언으로서, 범용 함수형 언어이다.
  • 파이썬(Python) : 프로그래밍 입문자가 읽기 쉽고 적은 코드를 사용하여 프로그램을 개발할 수 있다. 많은 사람에게 추천되는 언어이며, 데이터 과학에서도 자주 사용되고 웹사이트 개발에서도 많이 사용되고 있다. 최근 python은 ML(machine learning)에서도 많이 사용된다.
  • 자바(JAVA) : 1995년 썬 마이크로 시스템즈에서 개발한 객체지향 프로그래밍 언어이다. 거의 매년 세계에서 가장 많이 사용되는 언어의 인기 1등을 차지하고 있다.

3) 웹 프로그래밍에서 인기가 많은 언어

사람마다 다른 관점으로 언어를 바라보기 때문에 순위를 매긴다는 것은 쉽지 않다. 기업이나 언론의 경우 인기 있는 프로그래밍 언어를 알기 위해서 github, stackoverflow와 같은 사이트에서 언급되는 횟수를 활용하기도 한다.

WEB01

4) Github에서 가장 인기 있는 언어 15개

출처: https://octoverse.github.com/

WEB02

5) 티오베의 순위

출처: https://www.tiobe.com

티오베는 소프트웨어 품질 관련 서비스를 제공하고 있는 기업으로써 위키피디아, 아마존, 유튜브, 구글 검색창의 입력되는 정보를 이용하여 순위를 정한다.

티오베의 순위를 보면 2016, 2017년도 1등은 Java언어가 차지하고 있다.
하지만 다른 언어들의 인기가 높아지면서 비율이 떨어졌다. 2006년부터 웹과 관련된 언어들이 인기를 얻기 시작하였고, 2012년부터는 모바일 앱을 만들기 위한 언어가 인기를 얻게 되었다. 그리고 2016년부터는 데이터 과학과 관련된 언어들이 인기를 얻고 있다.

6) 웹 관련 인기 언어

  • 파이썬(Python) : 프로그래밍 입문자가 읽기 쉽고 적은 코드를 사용하여 프로그램을 개발할 수 있다. 많은 사람에게 추천되는 언어이며, 데이터 과학에서도 자주 사용되고 웹사이트 개발에서도 많이 사용되고 있다.
  • PHP : 웹의 80% 이상이 PHP로 만들어졌다고 한다. 그만큼 PHP는 웹 개발에서 많이 사용된다.
  • 자바스크립트(JavaScript) : 자바스크립트는 처음 시작이 브라우저에서 동작하는 언어였다. 그러나 현재는 서버에서도 작성하는 프로그램으로 점차 영역을 넓혀가고 있다. 프론트 개발자라면 반드시 알아야 하는 언어이다. - 자바(JAVA) : 엔터프라이즈 소프트웨어 환경에 잘 맞는 언어이다. 큰 규모의 소프트웨어 개발에 JAVA언어가 많이 사용되고 있다. JAVA언어를 지원하는 수 많은 커뮤니티에 위해서, 지속적으로 발전되어 훌륭한 구조와 설계 기법들이 잘 갖춰져 있다.
  • 루비(Ruby) : 빠른 개발에 널리 사용되며, 단순함과 세련된 웹 어플리케이션을 만들 수 있기 때문에 인기 있는 언어 중의 하나이다.
profile
Back-End Engineer

0개의 댓글