게으른 나르의 코딩

[JavaScript] 자바스크립트 본문

Languages/JavaScript

[JavaScript] 자바스크립트

개발자 나르 2022. 5. 23. 15:58
반응형

초창기 자바스크립트는 웹페이지의 보조적인 기능 즉, 브라우저에서 서버로부터 전달받은 HTML과 CSS를 단순히 렌더링하는 수준이었다.

그러나 점차 자바스크립트를 이용한 Ajax, jQuery, V8 js 엔진, Node.js, SPA 프레임워크가 등장하면서 발전해 나갔다.

 

Ajax(Asynchronous JavaScript and XML)란?

자바스크립트를 이용해 서버와 브라우저가 비동기(Asynchronous) 방식으로 데이터를 교환할 수 있는 통신 기능이다.

 

Ajax가 등장한 이유는 변경할 필요가 없는 부분까지 포함된 HTML 코드를 처음부터 렌더링을 해야해서 성능 면에서 많이 떨어지기 때문에 렌더링을 비동기로 처리함으로써 변경할 필요가 없는 부분은 렌더링하지 않고, 필요한 부분 데이터만 전송받아 한정적으로 렌더링하여 빠른 성능과 부드러운 화면 전환이 가능해지게끔 하였다.

 

jQuery란?

프론트엔드 부분에서 DOM을 더욱 쉽게 제어하고 JS보다 배우기 쉽고 직관적이다. 현재로서는 점점 사용하는 개발자가 떨어지는 추세이다.

 

V8 자바스크립트 엔진이란?

웹 애플리케이션 프로그래밍 언어로서의 가능성이 확인된 자바스크립트로 웹 애플리케이션을 구축하려는 시도가 늘면서 더욱 빠르게 동작하는 자바스크립트 엔진의 필요성이 대두되면서 생겨났다.

 

Node.js란?

비동기 I/O(입출력)를 지원하며 단일 스레드 이벤트 루프 기반으로 동작함으로써 요청 처리 성능이 좋다.

따라서 Node.js는 데이터를 실시간으로 처리하기 위해 I/O 빈번하게 발생하는 SPA 에 적합하다. 하지만 CPU를 많이 잡아먹는 고성능 애플리케이션에서는 단일 스레드로 이루어졌기 때문에 권장하지 않는다.

 

JS가 만들어졌을 때는 런타임 환경이 없었다. 하지만 Node.js는 V8 자바스크립트 엔진으로 빌드된 자바스크립트 런타임 환경으로 생겨나면서 이제는 브라우저 없이도 JS를 런타임 할 수 있는 환경이 조성되었다.

그러므로 프론트엔드와 백엔드 영역에서 자바스크립트를 사용할 수 있다는 동형성이 생겨 JS로만 사이트 구축이 가능해졌다.

 

JS의 특징

자바스크립트는 웹 브라우저에서 동작하는 유일한 프로그래밍 언어다.

기본 문법은 C, Java와 유사하고 셀프에서는 프로토타입 기반 상속을, 스킴에서는 일급 함수의 개념을 차용했다.

개발자가 별도의 컴파일 작업을 수행하지 않는 인터프리티 언어다.

또한 자바스크립트는 명령형, 함수형, 프로토타입 기반 객체지향 프로그래밍을 지원하는 멀티 패러다임 프로그래밍 언어다.

 

반응형

'Languages > JavaScript' 카테고리의 다른 글

[JavaScript] 연산자 (2)  (0) 2022.05.25
[JavaScript] 연산자 (1)  (0) 2022.05.25
[JavaScript] 데이터 타입  (0) 2022.05.25
[JavaScript] 표현식과 문  (0) 2022.05.25
[JavaScript] 변수  (0) 2022.05.23
Comments