• node.js란?
  • 특징

node.js

  • node.js는 무엇일까?

요약

"확장성"을 중심으로 하는 높은 처리 성능을 가진소프트웨어 플랫폼이며, 비동기 이벤트 주도 JavaScript 런타임으로써 Node.js 는 확장성 있는 네트워크 애플리케이션을 만들 수 있도록 설계되었다. 더나아가 내장 HTTP 서버 라이브러리를 포함하고 있어 별도의 소프트웨어 없이 웹서버에서 동작가능하다.

위키백과가 설명하는 node.js

Node.js 확장성 있는 네트워크 애플리케이션(특히 서버 사이드) 개발에 사용되는 소프트웨어 플랫폼이다. 작성 언어로 자바스크립트를 활용하며 Non-blocking I/O 단일 스레드 이벤트 루프를 통한 높은 처리 성능을 가지고 있다.
내장 HTTP 서버 라이브러리를 포함하고 있어 웹 서버에서 아파치 등의 별도의 소프트웨어 없이 동작하는 것이 가능하며 이를 통해 웹 서버의 동작에 있어 더 많은 통제를 가능케 한다.

 

node.js 공식홈페이지에서 설명하는 node.js

비동기 이벤트 주도 JavaScript 런타임으로써 Node.js 는 확장성 있는 네트워크 애플리케이션을 만들 수 있도록 설계되었습니다. 
왜냐하면, Node.js 에서 I/O를 직접 수행하는 함수는 거의 없으므로 프로세스는 결과 블로킹 되지 않습니다. 아무것도 블로킹 되지 않으므로 Node.js 에서는 확장성 있는 시스템을 개발하는 게 아주 자연스럽습니다.
Node.js 는 좀 더 발전된 이벤트 모델을 선택해서 라이브러리가 아닌 런타임 생성자로 이벤트 루프 제공합니다

용어 정리

+ 블로킹: Node.js 프로세스에서 추가적 js의 실행을 위해 js가 아닌 작업이 완료될 때까지 기다려야만 하는 상황
+ 이벤트 루프: 작업 요청 후, 완료되었을 때 어떤 작업을 진행할지에 대한 콜백 함수를 지정하여
동작 완료 시, 해당 콜백함수 실행하는 동작 방식이다. 

이벤트루프에 큐 형식의 자료구조가 포함있다. 하지만 이벤트 루프는 이 큐를 돌면서 실행하지 않고, 스택을 처리한다.

이벤트루프는 round-robin 방식으로 차례 차례 돌면서 처리되는 특정 작업들의 단계들로 이루어져 있다.



https://nodejs.org/ko/about/

 

About | Node.js

Node.js® is a JavaScript runtime built on Chrome's V8 JavaScript engine.

nodejs.org

https://nodejs.org/ko/docs/guides/blocking-vs-non-blocking/

 

블록킹과 논블록킹 살펴보기 | Node.js

Node.js® is a JavaScript runtime built on Chrome's V8 JavaScript engine.

nodejs.org

https://nodejs.org/ko/docs/guides/event-loop-timers-and-nexttick/

 

Node.js 이벤트 루프, 타이머, `process.nextTick()` | Node.js

Node.js® is a JavaScript runtime built on Chrome's V8 JavaScript engine.

nodejs.org

https://ko.wikipedia.org/wiki/Node.js

 

Node.js - 위키백과, 우리 모두의 백과사전

Node.js는 확장성 있는 네트워크 애플리케이션(특히 서버 사이드) 개발에 사용되는 소프트웨어 플랫폼이다. 작성 언어로 자바스크립트를 활용하며 Non-blocking I/O와 단일 스레드 이벤트 루프를 통한

ko.wikipedia.org

 

+요새 프론트엔드에서 node.js를 런타임환경으로 많이 사용한다.

왜 많이 사용하게될까? 답은 댓글로 gogo~~

 

 

 

출처: https://zereight.tistory.com/855

목차

  • node.js란 무엇인가
  • npm(yarn)이란 무엇인가
  • 정적 타입 언어 vs 동적 타입 언어(참고로 Javascript는 동적 타입 언어이다)
  • 라이브러리와 프레임워크의 차이
  • 'REST API'란 무엇인가
  • Node.js의 BE 또는 FE Library / Framework 에 대해서 알아보고 및 비교해보기(각자 희망 분야에 맞게)

 

 

우리는 프로젝트를 만들기전에 사전지식을 가지고 있으면 편합니다. (모른다고해도 어차피 프로젝트를 하면서 공부해야합니다.)

  • node.js란 무엇인가

keyword:

https://solfwaredevelopers.tistory.com/43?category=1172627
 

node.js란?

node.js란? 특징 node.js는 무엇일까? 요약 "확장성"을 중심으로 하는 높은 처리 성능을 가진소프트웨어 플랫폼이며, 비동기 이벤트 주도 JavaScript 런타임으로써 Node.js 는 확장성 있는 네트워크 애플

solfwaredevelopers.tistory.com

  • npm(yarn)이란 무엇인가

keyword:

https://solfwaredevelopers.tistory.com/44?category=1172627
 

npm이란?

※ 원할한 진행을 위해서 반말체를 사용했습니다.(양해부탁드립니다.) 1. 들어보긴 했는데 과연 npm이란 무엇일까? npm (노드 패키지 매니저/Node Package Manager) 이다. 자바스크립트 런타임 환경인 N

solfwaredevelopers.tistory.com

  • 정적 타입 언어 vs 동적 타입 언어(참고로 Javascript는 동적 타입 언어이다)

keyword:

https://solfwaredevelopers.tistory.com/45
 

정적 타입 언어 vs 동적 타입 언어

타입이란? 정적 타입 언어 동적 타입 언어 정적 타입 언어 vs 동적 타입 언어(참고로 Javascript는 동적 타입 언어이다) 번외: typescript가 인기가 많아지는 이유 위에 사진에 보듯 동적 타입vs 정적타

solfwaredevelopers.tistory.com

  • 라이브러리와 프레임워크의 차이

keyword:

https://solfwaredevelopers.tistory.com/46

 

 

라이브러리와 프레임워크의 차이는?

라이브러리 프레임워크 라이브러리 vs 프레임워크 라이브러리 소프트웨어 개발 시 사용되는 프로그램의 구성요소로, 공통으로 사용될 수 있는 특정한 기능(들)을 모듈화한 것이다. 대상 환경(

solfwaredevelopers.tistory.com

  • 'REST API'란 무엇인가

keyword:

https://solfwaredevelopers.tistory.com/47

 

 

'REST API'란 무엇인가?

API REST API 번외: 다른 종류API 제목 그대로 'REST API'란 무엇일까? 우선 API에 대해서 알아보자 Application Programming Interface의 준말이다. 응용 프로그램(1)에서 사용할 수 있도록, 운영 체제나 프로..

solfwaredevelopers.tistory.com

  • Node.js의 BE 또는 FE Library / Framework 에 대해서 알아보고 및 비교해보기(각자 희망 분야에 맞게)

keyword:

https://solfwaredevelopers.tistory.com/48

 

 

Node.js의 BE 또는 FE Library / Framework란?

.React.js React는 페이스북에서 개발한 유저 인터페이스(User Interface, UI) 라이브러리다. 페이스북, 인스타그램, 넷플릭스, 에어비앤비, 애플 등 다양한 곳에서 활용한다.업데이트를 활발

solfwaredevelopers.tistory.com

 

'만든 프로젝트 > 2021 여름방학' 카테고리의 다른 글

프로젝트 만들기전 - 사전지식(2)  (0) 2021.08.04

R이란?

통계 데이터 수정과 분석에 주로 사용되는 언어로 시각화가 뛰어남

통계뿐만 아니라 일반 프로그래밍(새로운 함수 생성, 분석자동화)도 가능함

오픈소스 소프트웨어이므로 사용자들이 수많은 함수를 공유하고 있음

데이터 분석 또는 시각화가 목적이라면 R언어, 웹 애플리케이션과 연동할 목적이라면 Python을 이용

 

R을 사용하는 이유

1. Reproducibility (재현성, 재현가능성)

2. Automation (자동화)

3. Communication (소통)

 

위에 내용은 유튜브 스마트인재개발원 인쌤TV의 R기초 강의를 참고했다. 가볍게 입문하기 위해 듣기 시작한 강의인데 깔끔하고 간단한 점이 마음에 든다. 사실 R프로그래밍 학점따기도 그렇고 따라가기 힘들다고 해서 걱정되어 미리 맛보기를 하려고 했는데 파이썬과 비슷한 느낌이 든다. 파이썬과 병행하면 많이 도움이 될 것 같다.. 간단히 R에 대해서 정리해보았고 설치 후 실행정도만 해보았다. 다음에는 변수와 자료구조에 대해 공부해보겠다.

+ Recent posts