Node.js 를 배워보고 싶은데 goorm에 [한눈에 끝내는 Node.js]라고 기초 강의가 있길래 한번 들어보려고 한다.
Node.js 는 웹프로그래밍에서 서버 만들때 쓰는 언어다.
간단하게 Node.js 는
1. js 기반
2. 싱글 스레드, 비동기 방식
이다. 처음에 프론트 배울 때 js 쓰곤 하는데 백도 js로 쓸 수 있다는게 큰 이점이라 요즘 노드는 성장세!
AJAX : Asynchronous JavaScript and XML 의 약어인데
자바스크립트가 중심역할을 담당하는 기술이다. 구글의 각종 서비스, 페이스북, 트위터, 네이버 등에서 개발한 웹애플리케이션들은 모두 AJAX를 적극적으로 활용한 동적인 웹을 표방하는 서비스들.
js 말고도 동적 웹페이지 만들수 있는건 JSP, Servlet, ASP 등 많은 언어가 있는데
js 가 가장 많이 쓰이는 이유
js 는 웹 브라우저에서 실행되는 반면 위에서 말한건 웹 서버에서 해석되고 실행되어 결과만 html로 변환 -> 웹 브라우저에 보여줌(느리다)
js 특징
동적 형변환 : 변수의 형변환이 자동으로 이루어진다.
프로토타입 기반 객체지향 : 객체 생성시 객체로부터 그 특성을 복제해서 새로운 객체 생성
실행 시 평가 : eval() 함수 같은 요소가 있어서 프로그램 실행 도중에 동적으로 코드 실행가능
고차 함수 : 인자로서 함수들을 취하거나 함수를 반환할 수 있는 함수
js 엔진이란?
개발자가 작성한 js 코드를 실행하는 프로그램 혹은 인터프리터
수많은 js 엔진이 존재하는 이유는 각각의 엔진이 서로다른 웹 브라우저, node.js 같은 런타임에서 동작하도록 만들어졌기 때문. 가장 알려진건 구글의 V8이다.
V8
: 오픈소스로 구글에서 개발. C++ 로 작성되었고 크롬과 node.js에서 사용됨.