본문 바로가기
웹 개발

JavaScript와 Node.js의 차이점

by Randompedia 2023. 6. 21.
반응형

Javascript
이미지 출처:Wikimedia Commons

Introduction

웹 개발에 대해 조금이라도 공부해본 사람이라면 JavaScript라는 언어를 들어보았을 것입니다. 웹 페이지의 상호작용을 위해 가장 널리 사용되는 스크립트 언어인데요, 그러나 JavaScript의 활용 범위는 웹 브라우저 안에서만 가능하다고 생각하는 분들이 많습니다. 오늘은 이러한 통념을 깨고, JavaScript의 활용 범위를 확장해주는 도구인 Node.js에 대해 알아보겠습니다.

JavaScript란?

JavaScript는 웹 페이지에 동적인 요소를 추가하기 위해 사용하는 스크립트 언어입니다. 사용자와 상호작용하거나 웹 페이지를 업데이트하고, 콘텐츠를 조작하고, 웹 페이지의 동적인 변화를 처리하는 등의 역할을 수행합니다. 그러나 전통적으로 JavaScript는 웹 브라우저 내에서만 실행되며, 웹 브라우저의 한계 내에서 동작하는 언어였습니다.

Node.js란?

Node.js는 프로그래밍 언어 자체가 아닌, JavaScript를 웹 브라우저의 한계를 넘어 컴퓨터의 일반적인 시스템 작업을 처리할 수 있도록 도와주는 도구입니다. Node.js의 등장으로 JavaScript는 브라우저를 제어하는 데 그치지 않고, 파일 시스템을 제어하거나 네트워크 연결을 수립하는 등의 서버 사이드에서의 업무를 수행할 수 있게 되었습니다.

Node.js를 사용하면 JavaScript로 데이터베이스를 직접 제어하거나, 파일을 읽고 쓰는 등의 작업이 가능해집니다. 이로 인해 JavaScript는 웹 브라우저 뿐만 아니라 서버 측에서도 프로그래밍 언어로서의 역할을 수행할 수 있게 되었습니다.

그러면 Node.js는 왜 만들어졌는가?

JavaScript는 원래 웹 브라우저에서 실행되는 언어로 개발되었습니다. 그런데 웹 응용 프로그램의 복잡성이 증가하고 서버 측 스크립팅에 대한 요구가 늘어나면서, JavaScript를 웹 브라우저 이외의 환경에서도 실행할 수 있도록 하고 싶은 요구가 높아졌습니다. 이러한 요구를 충족시키기 위해 Ryan Dahl이 2009년에 Node.js를 개발하였습니다.

 

Node.js는 Google의 V8 JavaScript 엔진을 기반으로 하며, 이를 통해 JavaScript 코드를 웹 브라우저 외부에서도 실행할 수 있게 되었습니다. 이로 인해 서버 측에서 JavaScript를 사용해 네트워크 통신, 파일 I/O 등을 다루는 것이 가능해졌고, JavaScript의 활용 범위가 크게 확장되었습니다.

Conclusion

항목 JavaScript Node.js
종류 프로그래밍 언어 런타임 환경
사용처 웹 브라우저 서버 및 다양한 환경
기능 웹 사이트를 동적으로 만들기 JavaScript를 이용해 서버를 구축하거나 파일 시스템을 제어하는 등의 작업

JavaScript와 Node.js는 서로 다른 환경에서 동작하면서 웹 개발의 가능성을 확장시킵니다. JavaScript는 웹 페이지의 동적인 요소를 처리하며, Node.js는 웹 브라우저의 한계를 넘어 서버 사이드에서도 JavaScript를 활용할 수 있게 합니다. 따라서 두 개념을 제대로 이해하고 활용하는 것은 웹 개발에 있어 중요한 기술이 될 것입니다.

반응형

'웹 개발' 카테고리의 다른 글

CSR(Client Side Rendering)과 SSR(Server Side Rendering) 이해와 차이  (0) 2023.06.23
웹 서버 이해하기  (0) 2023.06.23
프론트엔드와 백엔드란?  (0) 2023.06.21
URL과 URI 차이  (0) 2023.06.21
클라우드호스팅이란?  (0) 2023.06.21