-
[Node.js] Node.js w3schools Tutorial - Day.1programming/node.js 2019. 11. 16. 00:00반응형
*해당 내용은 https://www.w3schools.com/nodejs/ 의 튜토리얼을 따라 하며 정리하는 글입니다.
Node.js를 공부해야겠다는 생각이 든 것은,
2~3년 전부터 심심할 때마다 구직사이트를 보는데 간간히 보이던 Node.js란 이름이
요즘에는 제법 많은 빈도로 보이게 된 때부터, 공부를 한번 해봐야겠다 생각이 들었다.
그리고 혼자 공부하면 조금 집중력이나, 진도가 느려질 것 같고
블로그에 글을 쓰면서 진행하면 좀 더 열심히 해보지 않을까 해서 글을 올린다.
정말 처음 배우는 입장이라, 잘못된 정보가 있을 수도 있지만
튜토리얼을 따라서 차근차근 진행할 예정이다.
왜 튜토리얼 사이트가 w3schools 이냐면,
그냥 많이 본 사이트라서 그렇다.
좀 더 좋은 Node.js 사이트가 있으면 다른 곳에서 진행할 수 도 있다.
Node.js 란?
- Node.js is an open source server environment
- Node.js is free
- Node.js runs on various platforms (Windows, Linux, Unix, Mac OS X, etc.)
- Node.js uses JavaScript on the server라고 소개를 한다.
오픈소스이고, 프리고, 여러 플랫폼에서 작동된다는 것들 보다,
마지막이 눈에 띈다.
서버에서 JavaScript를 사용한다는 것은 정확히 어떤 것 인지는 모르겠다.
Why Node.js?
Node.js uses asynchronous programming!
Node.js는 비동기 프로그래밍을 사용한다고 한다.
지금 까지 본 것으로 Node.js를 정의하면
"서버에서 사용할 수 있는 비동기 JavaScript"
Node.js 다운로드하기
해당 사이트로 들어가서 LTS버전을 다운로드하면 된다.
설치 과정은 이전에 해서 정확히 기억이 나진 않지만 아래와 같이 뜨면 된다.
myfirst.js
123456var http = require('http');http.createServer(function (req, res) {res.writeHead(200, {'Content-Type': 'text/html'});res.end('Hello World!');}).listen(8080);위와 같은 코드를 작성 후, cmd 창에서 node myfirst.js를 실행해주고,
브라우저에서 localhost:8080으로 접속하면 아래와 같이 뜰 것이다.
서버에서 사용하는 JavaScript라는 게 이렇게 서버를 만드는 것을 얘기하는 것 인지는 모르겠지만,
일단 작동되는 페이지 하나를 만들었다.
Include Modules
한번 풀어서 보면 require()을 통해서 'http'모듈을 사용할 수 있게 만든다.
그래서 http로 서버를 만들고(createServer),
접속을 기다리는 구조인 것 같다.(listen)
자신만의 모듈 만들기
아래와 같은 모듈을 만들어 "myfirstmodule.js"로 저장하고,
123exports.myDateTime = function () {return Date();};위 코드를 이전 코드와 합쳐 아래 코드를 만들어 보자.
12345678var http = require('http');var dt = require('./myfirstmodule');http.createServer(function (req, res) {res.writeHead(200, {'Content-Type': 'text/html'});res.write("The date and time are currently: " + dt.myDateTime());res.end();}).listen(8080);코드를 "demo_module.js"에 저장 후,
node demo_module.js로 실행하고, 브라우저를 실행했을 때 아래와 같이 뜨면 된다.
(시간은 물론 같지 않을 것이다.)
반응형'programming > node.js' 카테고리의 다른 글
[Node.js] gmail로 이메일 전송하기 (0) 2019.11.21 [node.js] 노드 시작할때 실행 인자 받기 (0) 2019.11.20 [Node.js] Node.js w3schools Tutorial - Day.3 (0) 2019.11.19 [Node.js] Node.js w3schools Tutorial - Day.2 (0) 2019.11.18 node.js 설치 방법 (0) 2019.10.15