오도원입니다.

건강과 행복을 위하여

Development/Node.js

1. Node.js

오도원공육사 2020. 7. 19. 16:23
반응형

1. Node.js

  • 웹에서 서버를 개발할 때 쓰이는 언어
  • 자바스크립트 기반의 프레임워크

2. 핵심

  • 싱글 스레드에 비동기(Asynchronous)방식
  • 자바스크립트 기반
  • 프론트뿐만 아니라 백엔드 또한 js로 작성할 수 있게된다.

3. 자바스크립트(Javascript)

  • 프론트엔드 -> HTML, CSS, Javascript
  • HTML : 웹페이지의 뼈대 제공
  • CSS : 색깔, 글씨체, 모양과 같은 디자인적 요소
  • JS : 웹페이지의 동작

따라서, 자바스크립트는 동적으로 컨텐츠를 바꾸고, 멀티미디어나 움직이는 이미지 등 웹페이지를 꾸며주도록 도와준다.

 

개발언어네는 js가 1등
프레임워크에서는 node.js가 1등

 

구글, 페이스북, 트위터 등 각종 웹에서 모두 ajax를 적극적으로 활용하여 동적인 웹을 개발한다.  AJAX는 Asynchrounous Javascript And XML의 약어로 자바스크립트가 중심 역할을 담당하는 기술이다. 

 

4. JS의 탄생

1995년 당시, 브랜든 아이크(brendan erich)가 HTML에 움직임을 주고자 언어를 개발했고, 그 당시 유명했던 java의 유명세를 이용하여 마케팅 차원에서 이름을 Javascript로 지었다. 

 

자바스크립트가 나오면서 웹 문서의 내용을 동적으로 바꾸거나 각종 이벤트 적용이 가능해졌다.

 

5. JS 특징

  • JS는 웹 브라우저에서 실행된다. - 클라이언트 측
  • JSP, Servlet, ASP는 웹 서버에서 연산되고 결과를 HTML로 변환하여 웹 브라우저에 보여준다. - 서버 측
  • 서버 측에서의 연산은 즉각적인 반응을 못하고 시간이 오래걸린다.

1) 동적 형변환

var i = 1;
var ch = "a";
console.log(i + ch);
ch = 1;
console.log(i + ch);

2) 프로토타입 기반 객체 지향(Prototypal Object-Oriented)

  • 객체 생성시 클래스의 내용을 상속받아 객체생성을 하지 않는다.
  • 객체 특성을 복제하여 새로운 객체 생성
  • 런타임 중에도 객체 속성과 값을 추가, 변경, 삭제 가능
var person = {name : "David Ki", age : 24};
console.log(person);

person.height = 187;
console.log(person);

 

3) 실행 시 평가

  • eval()과 같은 함수로 프로그램 실행 도중에도 동적으로 코드 실행가능
eval("var a = 1, b = 2;");
console.log(a, b);

 

4) 고차 함수

  • 함수를 인자로 받거나 함수를 반환하는 함수
var ho_func = function(param_func) {param_funct();};
ho_func(function() {console.log("hello!");});

 

반응형