JavaScript 는 무엇을 하는 언어인가?

간략하게 보는 JavaScript 연대기

Java"Script"

자바스크립트는 본래 스트립트 언어이다. 스크립트 언어란 이미 존재하는 프로그램을 제어하기 위해 사용되는 언어 를 말한다. 본래 JavaScript는 브라우저를 제어하기 위해 탄생한 언어이다. HTML이 웹페이지의 기본 구조, CSS이 웹페이지의 디자인, JavaScript가 웹페이지의 동작을 담당한다.

V8 엔진의 등장

2008년 구글에서 V8 자바스크립트 엔진을 발표했다. V8 엔진은 C++로 작성된 자바스크립트 엔진으로 JavaScript의 실행속도를 획기적으로 빠르게 만들었다. 또한 V8 엔진은 독립형으로 개발되었기 때문에 브라우저 뿐만 아니라 다른 C++ 프로그램에 내장해서 사용할 수 있다. V8 엔진 덕분에 브라우저 내 웹페이지의 동작 속도가 매우 빨라졌을 뿐 아니라 브라우저 밖에서도 JavaScript를 사용할 수 있게 되는 기반이 된다.

Node.js

V8의 출현으로 우리가 흔히 사용하는 Node.js가 등장하게 되었다. Node.js 는 V8 엔진을 기반으로 하는 JavaScript 런타임 프로그램이다. JavaScript는 원래 브라우저라는 실행환경에서만 동작하는 언어였는데 이제 Node.js라는 실행환경 위에서도 작동할 수 있게 된 것이다. 덕분에 우리는 Node.js 로 웹서버를 구축하는 등 자체 어플리케이션을 만들 수 있게 되었다. JavaScript 하나로 프론트엔드, 백엔드를 모두 다룰 수 있게 되었기 때문에 JavaScript는 최고의 인기 언어로 떠오르게 되었다.

그래서 JavaScript 는 무엇을 하는 언어인가요?

본래 브라우저를 제어하는 언어였으나 Node.js 라는 새로운 실행 환경의 등장으로 자체 어플리케이션을 만들 수 있게 된 언어. 프론트엔드와 백엔드 코드를 모두 작성할 수 있다.

JavaScript는 어떻게 쓰는 언어인가?

프로그래밍 언어가 설계 될 때 각자 지향하는 패러다임이 있다. JavaScript는 명령형, 함수형, 객체지향 프로그래밍을 지향하는 멀티 패러다임 언어이다.

명령형 vs 선언형 프로그래밍

명령형 프로그래밍은 내가 어떻게(how) 할 것인지, 선언형 프로그래밍은 내가 _어떤(what) 일_을 할 것인지를 말한다.

예를 들어서 마트에 가서 당근을 1개 산다면 명령형 프로그래밍은 두 블록을 지나 신호등을 건너 마트에 간다.

가장 안쪽으로 들어가 야채코너에서 당근을 찾는다.

입구쪽으로 돌아와 계산대에서 당근을 구매한다