什麼是 Node.js?Node.js 完整介紹懶人包!
資料庫/資料科學

什麼是 Node.js?Node.js 完整介紹懶人包!

究竟 Node.js 有什麼樣的能力讓 NETFLIXLinkedIn 等企業搶著用呢?今天就讓我們帶你圖解 Node.js,完整介紹 Node.js 的特性和優缺點吧!身為工程師的你想要老闆幫你加薪,卻還不知道 Node.js 是什麼?想讓自己的年薪遙遙領先其他人,卻還沒有 Node.js 的能力?不用怕,今天看完這篇,你就會知道該怎麼開始你的加薪之路了!

什麼是 Node.js?Node.js 完整介紹懶人包!

Node.js 是什麼?誰適合學 Node.js?

Node.js

Node.js 是由 JavaScript 編寫的,寫法相對簡單且可以達到前後端語言統一開發來提升效率及便利性,減少團隊在合作上的摩擦。簡單來說,可以把 Node.js 想成「能在後端運作的 JavaScript」。

因此近年來 Node.js 深受全球各大企業的喜愛,根據 104 人力銀行資料顯示,近 9 成的前後端工程師職缺都指出需要熟悉 Node.js 的能力。CakeResume 資料也顯示,企業對於後端工程師的能力需求中 Node.js 排行前三呢!

誰適合學 Node.js ?

想學習 Node.js 當然不分男女老少都能學,但如果有一點 JavaScript 基礎的人會比較好上手哦~
如果你希望邁向全端開發、想轉職 Web 後端工程師、想讓開發過程更便利、順暢的工程師,或是你已經是 Web 後端工程師,但想再進階學習、想成為兼具前後端技術的工程師、想自己架網站並累積作品的你

那 Node.js 就是你快速達成目標的選擇!!

Node.js 的五大優勢

Node.js

1、實現全端開發

Node.js 統一了前後端的語言,不僅可以將程式碼標準化,也可以實現全端開發。

2、入門門檻低

Node.js 是能夠在伺服器端運行 JavaScript 的開放原始碼、跨平台 JavaScript 執行環境,所以對於本來就懂 JavaScript 語法的工程師,在學習上會比較容易上手。

3、加快開發速度

Node.js 使用目前最快的瀏覽器內核 V8 做為執行引擎,確保了 Node.js 的性能和穩定性。它可以將 JavaScript 編譯成原生機器碼並快速執行常見的 Web 應用任務,例如讀取或寫入資料庫,讀取或寫入網絡連接,以及讀取或寫入文件系統。

4、社群支援強

Node.js 的套件管理系統 npm 做得非常好,網站上已經有上千個套件,因此你可以很容易的找到需要的功能,不需要自己重頭寫,大大提升了開發的速度。

5、跨平台運作

它可以運行在 WindowsOSXLinux 上運作,因此能實現跨平台開發、跨平台部署、跨平台運行。

Node.js 的五大特性

Node.js

為什麼使用 Node.js?
影片版 👉
https://hiskio.com/courses/399/lectures/20015

1、包含許多內建函數

例如 http、cypto、fs 模組…可以幫助我們快速開發其他常用的工具,如:爬蟲,而不只是拿來開發後端服務而已。

2、多數套件包含非同步的 API

意思是我們不用擔心 thread 的問題。
透過非同步的編成,我們可以在不考慮 thread 的控制下,平行處理一些邏輯,這是使用 node.js 的一大特性。

3、C++ 語言的 addon

如果覺得這些套件不夠用,也可以自行開發 C++ 語言的 addon 套件來支援 Node.js。因為 Node.js 本身就有支援 C++ 語言的 addon,我們就可以直接在 Node.js 程式中使用。

4、npm 跟 module dependency manager

另外兩個重要的東西:npm 跟 module dependency manager,這兩個工具使得 Node.js 生態系非常強大,並且因為容易安裝,使的開發速度大幅提升。

5、Node.js 小而美

Node 之所以稱作為 Node 就是因為他的程式都小小的,模組化的來到維護的需求。

Node.js 的缺點

Node.js

1、沒有thread的概念

Node.js 本身就是一個 thread 做所有的運算,而其他語言都有 thread 的概念。

2、非同步的邏輯不同於其他語言

非同步的邏輯異於其他語言,這是如果熟悉 thread 的人初期學 Node 最難以熟悉的地方。

3、太多不同的函式庫使用

npm 上面有成千上百個套件,在選用套件會難以決策之外,同時因為每個套件又可能相依於其他的套件,導致我們安裝一個套件會必須要把所以相依於的套件全部安裝上去,使的一隻程式肥大。

4、過多的小型套件 npm 安裝

這會造成程式不斷安裝相依的套件,例如一個小程式有 300 多個 npm 套件相依安裝而擁腫。

推薦的 npm 套組

Node.js

什麼是 npm?

1. npm 是 Node.js 官方提供的套件管理工具
2. npm 就像是一個大超商,裡面提供很多別人寫好且開源的 code 提供我們下載使用

推薦的 npm 套組

各個套組的詳細介紹和更多推薦套組,歡迎點選查看喔~
👉 推薦 npm(1) 👈👉 推薦 npm(2) 👈
這次我們整理了 12 個 npm 套組給大家

學會 Node.js 有什麼優勢?

Node.js

史蒂夫是公司的全端工程師,戴夫是公司的後端工程師
史蒂夫鑽研全球學習機會,戴夫精研如何成為擁有 60K 的後端工程師
為什麼史蒂夫和戴夫的薪水都遙遙領先同事?
因為史蒂夫和戴夫都選擇學習 Node.js

根據 LinkedIn 發布的 2020 年工作趨勢報告中,全端工程師和後端工程師皆為成長最為快速的新興職業。

其中全端工程師
所需專業技能: Node.js、 React.js、JavaScript、AngularJS、階層式樣式表(CSS)…
最受歡迎行業:電腦軟體、資訊科技與服務、網路、金融服務、高等教育…

後端工程師
所需專業技能:Node.js、JavaScript、亞馬遜網路服務、Git、MongoDB…
最受歡迎行業:電腦軟體、網路、資訊科技與服務、行銷與廣告、金融服務…

在全端工程師需求年成長 35% /後端工程師需求年成長 30% 的現況下

  • 擁有 Node.js 能力的全端工程師年薪最高,平均約 150 萬
  • 而擁有 Node.js 能力的後端工程師月薪也有前三高,平均約 67 K

 

 

Facebook Comments