초보자를 위한 Node.js 튜토리얼: 3일 안에 단계별 학습

Node.js 소개

최신 웹 애플리케이션은 부트스트랩, Angular JS 등과 같은 많은 인기 프레임워크의 도입으로 수년에 걸쳐 실제로 큰 발전을 이루었습니다. 이러한 프레임워크는 모두 인기 있는 프레임워크를 기반으로 합니다. 자바 스크립트 뼈대.

그러나 서버 기반 애플리케이션을 개발할 때 일종의 공백이 있었고 이것이 Node.js가 등장한 곳입니다.

Node.js도 JavaScript 프레임워크를 기반으로 하지만 서버 기반 애플리케이션을 개발하는 데 사용됩니다. 전체 튜토리얼을 진행하면서 Node.js를 자세히 살펴보고 이를 사용하여 서버 기반 애플리케이션을 개발하는 방법을 살펴보겠습니다.

Node.js 강의 계획서

초보자를 위한 Node.js 기초

👉 1 강의 Node.js 다운로드 및 설치 — Window에서 Node.js 및 NPM을 다운로드하고 설치하는 방법
👉 2 강의 Node.js NPM 튜토리얼 — 생성, 게시, 확장 및 관리
👉 3 강의 Node.js에서 HTTP 웹 서버 만들기 — 코드 예제가 포함된 튜토리얼

Node.js 고급 기능!

👉 1 강의 Node.js Express FrameWork 튜토리얼 — 10분 안에 배우기
👉 2 강의 Node.js를 MongoDB 튜토리얼 — 예제가 포함된 완벽한 가이드
👉 3 강의 Node.js 약속 튜토리얼 — JavaScript Promise에 대한 완전한 가이드
👉 4 강의 블루버드 약속 튜토리얼 — 블루버드 약속에 대한 완전한 가이드
👉 5 강의 Node.js를 Generators — 콜백과 Node.js가 무엇인가요? Generators
👉 6 강의 노드 js 스트림 튜토리얼 — 파일 스트림, 파이프
👉 7 강의 Jasmine을 사용한 Node.js 단위 테스트 튜토리얼 — 완전한 가이드
👉 8 강의 GraphQL 튜토리얼 — GraphQL이란 무엇입니까? 예를 들어 배우기

차이점을 알아보세요!

👉 1 강의 GraphQL과 REST - 차이점이 뭐야?
👉 2 강의 Node.Js 대 AngularJS — 차이점을 아십시오
👉 3 강의 Node.js 대 Python - 차이점이 뭐야?

Node.js 인터뷰 질문 및 튜토리얼 PDF

👉 1 강의 Node.js 인터뷰 질문 — 상위 25개 Node.js 인터뷰 질문 및 답변
👉 2 강의 Node.js 튜토리얼 PDF — 초보자를 위한 Node.js 튜토리얼 PDF 다운로드

Node.js 란 무엇입니까?

Node.js는 서버 측 웹 애플리케이션 개발에 사용되는 오픈 소스 크로스 플랫폼 런타임 환경입니다. Node.js 애플리케이션은 JavaScript로 작성되었으며 다양한 환경에서 실행될 수 있습니다. opera팅 시스템.

Node.js는 이벤트 기반 노드를 기반으로 합니다. archi실시간 웹 애플리케이션에 대한 애플리케이션의 처리량과 확장성을 최적화하도록 설계된 강의 및 비차단 입출력 API입니다.

오랜 기간 동안 웹 개발에 사용할 수 있는 프레임워크는 모두 상태 비저장 모델을 기반으로 했습니다. 상태 비저장 모델은 한 세션에서 생성된 데이터(예: 사용자 설정 및 발생한 이벤트에 대한 정보)가 해당 사용자의 다음 세션에서 사용할 수 있도록 유지되지 않는 모델입니다.

사용자 요청 간 세션 정보를 유지하려면 많은 작업을 수행해야 했습니다. 하지만 Node.js를 사용하면 마침내 웹 애플리케이션이 클라이언트와 서버 모두 통신을 시작할 수 있는 실시간 양방향 연결을 가질 수 있는 방법이 있습니다.wing 자유롭게 데이터를 교환할 수 있습니다.

Node.js를 사용하는 이유는 무엇입니까?

우리는 다음 장에서 Node.js의 실제 가치를 살펴볼 것입니다. 하지만 이 프레임워크를 그렇게 유명하게 만든 것은 무엇입니까? 수년에 걸쳐 대부분의 애플리케이션은 상태 비저장 요청-응답 프레임워크를 기반으로 했습니다. 이러한 종류의 응용 프로그램에서 사용자가 시스템으로 작업하는 동안 웹 세션 상태가 유지되도록 올바른 코드가 배치되었는지 확인하는 것은 개발자의 몫입니다.

하지만 Node.js 웹 애플리케이션을 사용하면 이제 실시간으로 작업하고 양방향 통신을 할 수 있습니다. 상태는 유지되며 클라이언트나 서버 중 하나가 통신을 시작할 수 있습니다.

Node.js의 특징

Node.js의 주요 기능 중 일부를 살펴보겠습니다.

  1. Async시간적 이벤트 중심 IO는 동시 요청 처리를 지원합니다. 이는 아마도 Node.js의 가장 중요한 판매 포인트일 것입니다. 이 기능은 기본적으로 일부 입력/출력에 대한 요청이 노드에서 수신되는 경우를 의미합니다. opera그러면 다음을 실행합니다. opera백그라운드에서 처리하고 다른 요청을 계속 처리합니다.
    이는 다른 프로그래밍 언어와는 상당히 다릅니다. 이에 대한 간단한 예가 아래 코드에 나와 있습니다.
var fs = require('fs'); 
          fs.readFile("Sample.txt",function(error,data)
          {
                console.log("Reading Data completed");
     });
  • 위의 코드 조각은 Sample.txt라는 파일을 읽는 것을 보여줍니다. 다른 프로그래밍 언어에서는 전체 파일을 읽은 후에만 다음 처리 라인이 발생합니다.
  • 그러나 Node.js의 경우 주목해야 할 중요한 코드 부분은 함수('function(error,data)')의 선언입니다. 이를 콜백 함수라고 합니다.
  • 여기서 일어나는 일은 파일 읽기입니다. opera이 작업은 백그라운드에서 시작됩니다. 그리고 다른 처리가 동시에 발생할 수 있습니다.neo파일을 읽는 동안에만 사용됩니다. 파일을 읽은 후 opera작업이 완료되면 이 익명 함수가 호출되고 "데이터 읽기 완료"라는 텍스트가 콘솔 로그에 기록됩니다.
  1. Node는 V8 JavaScript Runtime 엔진을 사용합니다. Google Chrome. Node에는 JavaScript 엔진에 대한 래퍼가 있어 런타임 엔진을 훨씬 빠르게 만들고 따라서 Node 내의 요청 처리 속도도 빨라집니다.
  2. 동시 요청 처리 – Node의 또 다른 주요 기능은 단일 프로세스에서 최소한의 오버헤드로 동시 연결을 처리하는 기능입니다.
  3. Node.js 라이브러리는 JavaScript를 사용합니다. 이는 Node.js 개발의 또 다른 중요한 측면입니다. 개발 커뮤니케이션의 주요 부분unity 은(는) 이미 javascript에 능숙하므로 javascript를 아는 개발자에게는 Node.js 개발이 더 쉬워집니다.
  4. 활발하고 활발한 커뮤니케이션이 이루어지고 있습니다.unity Node.js 프레임워크용. 활발한 커뮤니케이션으로 인해unity, 프레임워크에 항상 주요 업데이트가 제공됩니다. 이는 웹 개발의 최신 동향으로 프레임워크를 항상 최신 상태로 유지하는 데 도움이 됩니다.

Node.js를 사용하는 사람

Node.js는 많은 대기업에서 사용됩니다. 아래는 그 중 몇 가지 목록입니다.

  • Paypal – Paypal 내의 많은 사이트도 Node.js로 전환을 시작했습니다.
  • LinkedIn - LinkedIn은 Node.js를 사용하여 모바일 iPhone을 구동하는 서버, Android, 모바일 웹 제품.
  • Mozilla는 절반의 브라우저 API를 지원하기 위해 Node.js를 구현했습니다. bill이온이 설치됩니다.
  • eBay는 Node.js에서 HTTP API 서비스를 호스팅합니다.

Node.js를 사용해야 하는 경우

Node.js는 다음과 같은 스트리밍 또는 이벤트 기반 실시간 애플리케이션에 가장 적합합니다.

  1. 채팅 애플리케이션
  2. 게임 서버 – 한 번에 수천 개의 요청을 처리해야 하는 빠르고 고성능 서버인 경우 이상적인 프레임워크입니다.
  3. 협업 환경에 적합 - 문서를 관리하는 환경에 적합합니다. 문서 관리 환경에서는 여러 사람이 문서를 게시하고 문서를 체크아웃하고 체크인하여 지속적으로 변경합니다. 따라서 Node.js는 문서 관리 환경에서 문서가 변경될 때마다 Node.js의 이벤트 루프가 트리거될 수 있기 때문에 이러한 환경에 적합합니다.
  4. 광고 서버 - 여기서도 중앙 서버에서 광고를 가져오라는 수천 개의 요청이 있을 수 있으며 Node.js는 이를 처리하는 이상적인 프레임워크가 될 수 있습니다.
  5. 스트리밍 서버 – Node를 사용하는 또 다른 이상적인 시나리오는 클라이언트가 이 서버에서 다양한 멀티미디어 콘텐츠를 가져오도록 요청하는 멀티미디어 스트리밍 서버에 대한 것입니다.

Node.js는 높은 수준의 동시성이 필요하지만 전용 CPU 시간이 덜 필요한 경우에 좋습니다.

무엇보다도 Node.js는 javascript를 기반으로 구축되었으므로 동일한 javascript 프레임워크를 기반으로 하는 클라이언트 측 애플리케이션을 구축할 때 가장 적합합니다.

Node.js를 사용하지 말아야 할 경우

Node.js는 다양한 목적으로 많은 애플리케이션에 사용될 수 있습니다. 사용해서는 안 되는 유일한 시나리오는 애플리케이션에서 요구하는 긴 처리 시간이 있는 경우입니다.

노드는 단일 스레드로 구성됩니다. 애플리케이션이 백그라운드에서 일부 장기 실행 계산을 수행해야 하는 경우 다른 요청을 처리할 수 없습니다. 위에서 논의한 것처럼 Node.js는 처리에 전용 CPU 시간이 덜 필요한 경우에 가장 잘 사용됩니다.