Node伺服器端開發第一天

樑柱發表於2019-02-16

Node伺服器端開發第一天

Node簡介及配置、快速上手、核心特點、模組化

Node簡介

客戶端的JavaScript是怎樣的

  • 什麼是 JavaScript?

    • 指令碼語言
    • 執行在瀏覽器中
    • 一般用來做客戶端頁面的互動(Interactive)
  • JavaScript 的執行環境?

    • 是不是執行在瀏覽器呢?
    • 不夠嚴謹
    • 執行在瀏覽器核心中的 JS 引擎(engine)
  • 瀏覽器中的 JavaScript 可以做什麼?

    • 操作DOM(對DOM的增刪改、註冊事件)
    • AJAX/跨域
    • BOM(頁面跳轉、歷史記錄、console.log()、alert())
    • ECMAScript
  • 瀏覽器中的 JavaScript 不可以做什麼?

    • 檔案操作(檔案和資料夾的CRUD)
    • 沒有辦法作業系統資訊
    • 由於執行環境特殊(我們寫的程式碼是在不認識的人的瀏覽器中執行)
  • 在開發人員能力相同的情況下程式語言的能力取決於什麼?

    • -語言本身?-
    • 語言本身只是提供定義變數,定義函式,定義型別,流程控制,迴圈結構之類的操作
    • 取決於執行該語言的平臺(環境)
    • 對於JS來說,我們常說的JS實際是ES,大部分能力都是由瀏覽器的執行引擎決定
    • BOM和DOM可以說是瀏覽器開放出來的介面
    • 比如:Cordova中提供JS呼叫攝像頭,操作本地檔案的API
    • Java既是語言也是平臺
    • Java執行在Java虛擬機器(跨作業系統)
    • PHP既是語言也是平臺(跨作業系統)
    • C#語言平臺:.NET Framework(Windows)
    • C#可以執行在MONO這樣的平臺
    • 因為有人需要將C#執行在Linux平臺,所有出現了MONO
  • JavaScript 只可以執行在瀏覽器中嗎?

    • 不是
    • 能執行在哪取決於,這個環境有沒有特定平臺

什麼是Node

  • Node 就是 JavaScript 語言在伺服器端的執行環境
  • 所謂“執行環境(平臺)”有兩層意思:

    • 首先,JavaScript 語言通過 Node 在伺服器執行,在這個意義上,Node 有點像 JavaScript 虛擬機器;
    • 其次,Node 提供大量工具庫,使得 JavaScript 語言與作業系統互動(比如讀寫檔案、新建子程式),在這個意義上, Node 又是 JavaScript 的工具庫。

為什麼是JavaScript

Node的實現結構

Node在當下Web開發領域的應用

哪些公司在用

重點理解

  • Node是一個JavaScript的執行環境(平臺),不是一門語言,也不是JavaScript的框架;
  • Node的實現結構;
  • Node可以用來開發服務端應用程式,Web系統;
  • 基於Node的前端工具集

環境配置

安裝包的方式安裝

  • 安裝包下載連結:

  • 安裝操作:

    • 一路Next

更新版本

  • 操作方式:

    • 重新下載最新的安裝包;
    • 覆蓋安裝即可;
  • 問題:

    • 以前版本安裝的很多全域性的工具包需要重新安裝
    • 無法回滾到之前的版本
    • 無法在多個版本之間切換(很多時候我們要使用特定版本)

NVM工具的使用

Node Version Manager(Node版本管理工具)

由於以後的開發工作可能會在多個Node版本中測試,而且Node的版本也比較多,所以需要這麼款工具來管理

安裝操作步驟

  1. 下載:nvm-windows
  2. 解壓到一個全英文路徑
  3. 編輯解壓目錄下的settings.txt檔案(不存在則新建)

    • root 配置為當前 nvm.exe 所在目錄
    • path 配置為 node 快捷方式所在的目錄
    • arch 配置為當前作業系統的位數(32/64)
    • proxy 不用配置
  4. 配置環境變數 可以通過 window+r : sysdm.cpl

    • NVM_HOME = 當前 nvm.exe 所在目錄
    • NVM_SYMLINK = node 快捷方式所在的目錄
    • PATH += %NVM_HOME%;%NVM_SYMLINK%;
    • 開啟CMD通過set [name]命令檢視環境變數是否配置成功
    • PowerShell中是通過dir env:[name]命令
  5. NVM使用說明:

  6. NPM的目錄之後使用再配置

配置Python環境

Node中有些第三方的包是以C/C++原始碼的方式釋出的,需要安裝後編譯
確保全域性環境中可以使用python命令

環境變數的概念

環境變數就是作業系統提供的系統級別用於儲存變數的地方

  • Windows中環境變數分為系統變數和使用者變數
  • 環境變數的變數名是不區分大小寫的
  • 特殊值:

    • PATH 變數:只要新增到 PATH 變數中的路徑,都可以在任何目錄下搜尋

Windows下常用的命令列操作

  • 切換當前目錄(change directory):cd
  • 建立目錄(make directory):mkdir
  • 檢視當前目錄列表(directory):dir

    • 別名:ls(list)
  • 清空當前控制檯:cls

    • 別名:clear
  • 刪除檔案:del

    • 別名:rm

注意:所有別名必須在新版本的 PowerShell 中使用


相關文章