티스토리 뷰

Web/Node.js

[Node.js] 1일차 190107 : 기본개념 및 학습목적

열혈허슬러 상추님 2019.01.07 23:03

[Node.js] 1일차 190107 : 기본개념 및 학습목적

만든 날짜:2019-01-07 오후 9:47

 본 글은 에버노트에서 작성되었습니다.

WEB2 - Node.js

 본 글은 출처 생활코딩-https://opentutorials.org/course/3332-에 있는 강의를 들으며 요약정리한 내용입니다. 원내용은 위 링크에서 확인할 수 있습니다. 감사합니다.

 웹이 등장 후 불만이 쏟아져 나옴. html의 수동적인 개발방식 때문에 그랬다. html의 구조를 바꾸려면 수많은 코드를 수동으로 수정해야 했다. 방문자에게 마음대로 수정하게 하는 것도 위험하여 관리자만 컨텐츠를 수정 가능했고 한계가 있었다. 기계에게 시키고 싶다는 욕심을 해결하기위해 컴퓨터공학자들이. JavaScript에 익숙한 사람들이 웹페이지를 자동으로 생성하는 서버쪽 어플리케이션을 만들 수 있게하고 싶어했다. 이런 맥락에서 출현하는 기술이 Node.js다.



 1995년 넷스케이프 사에서는 자바스크립트 제작을 의뢰했다. 웹은 사용자와 상호작용할 수 있게 된다. 문서 -> 에플리케이션. 자바스크립트는 유일한 독점적인 웹 프로그래밍 언어였따. 또는 편파적이었다. 그래도 언어의 사용자를 넓혔다.

 2008년 구글이 크롬브라우저에서 동작하는 JS의 성능을 개선하기 위해서 V8엔진을 개발. 오픈소스로 공개한다. 라이언 달은 V8기반으로하는 Node.js를 만든다. JavaScript가 웹브라우저를 제어하는 것이었다면 Node.js는JavaScript를 이용해서 컴퓨터 자체를 제어한다. (파이썬,php,루비가 그런것 처럼) 웹페이지를 자동으로 생성하는 것을 개발자들이 만들고자했다. 우리는 자바스크립트를 이용해서 공장장이 되보자.



Node.js - 2. 수업의 목적


 웹페이지가 1억개라고 생각해보자. 태그 하나를 수정하되 그 태그가 다른 페이지에 동일하게 연계되어있다면, 모든 페이지의 코드를 수정해야할 것이다. (무려 1억개를 다 수정해야한다..) 이런 상황에서 우리에게 구원의 손길을 내미는 것이 Node.js다.


 수업을 다 듣고나면 위 코드를 다 이해하게 될 것이다! 문법은 JavaScript다.


 Template.js라는 파일안에 html코드가 있다. 위 코드의 ul태그를 ol태그로 바꿔만주면 모두 바뀐다. (1억개의 웹페이지를 한 번에!) 사용자가 요청할 때마다 Node.js (프로그래밍적으로) 생성해주기 떄문이다.




 사용자의 참여를 유도할 때는 원래 이메일로 받아서 직접 만들어야했다. 즉 제한됬었다. 우리가 만드는 웹 에플리케이션에는 입력을 했을 때..
 


 사용자가 추가한 파일이 생성되었다. 수정/삭제 또한 가능하다. 즉 우리는 Node.js를 이용해서 우리의 웹 사이트를 방문하는 사용자에게 컨텐츠 생성(수정/삭제)도 가능하게 할 수 있다.

 이런것이 가능해지며 사용자들이 직접 웹을 통해 게시할 수 있게되었다. (이후 웹의 폭발적인 팽창)


댓글
댓글쓰기 폼