讓咱們一塊兒來學習別人學不動的deno

幾天前,有人在github的一個開源項目denoissue區裏用中文發了一篇貼子:javascript

圖片描述

引來各類爭論,從而使得這個項目在短短几天時間裏就達到了8000多星的熱度,到如今還在持續增加,也許這是團隊的一種反向營銷策略?前端

無論怎麼說,前端就是一個(至少在目前爲止)須要不斷學習的領域,說實在的,對於咱們這些學習狂來講,若是前端不是有這麼多好玩的能夠學的東西,咱們也不會參與到這個領域裏頭來。別人抱怨學不動的時候,偏偏是咱們開始努力進步的時候,有句話怎麼說來着:彎道超車。因此抓住這個機會,讓咱們來一窺deno的真面目吧!java

關於deno

deno這個項目的發起者是ry,全名是Ryan Dahl,這位大神也是每位前端一定要關注的神級人物之一,由於是他於2009年寫出了Node.js,才使javascript語言脫離了前端語言這個狹義範疇,開始冠冕堂皇侵入後端。可是3年後的2012年,ry離開了node團隊,把團隊的管理權交給了另外一位大神isaacs,這位大神的表明做是——npm。如今ry從新出山,推出了deno。關於deno的評價,你能夠先簡單看一看這篇文章node

安裝

安裝go

其實deno的安裝很簡單,你須要先安裝好一個go語言的環境:git

brew install go

一般狀況下,它會在你的/Users/username下創建一個名字叫go的文件夾,之後全部跟go語言相關的依賴包都會被安裝在這個文件夾裏,因此你須要設置2個環境變量,一個是GOPATH,指向這個文件夾,另外一個是PATH,把/Users/username/go/bin包含進來,而後go語言的環境就創建好了。github

安裝protobuf

接下來,咱們開始用brew安裝protobufgolang

brew install protobuf

由於咱們前面已經安裝好了go語言的環境,因此咱們接下來安裝編譯deno所須要的2go語言依賴包:typescript

go get -u github.com/golang/protobuf/protoc-gen-go
go get -u github.com/jteeuwen/go-bindata/...

安裝v8worker2

v8worker2deno所依賴的最重要的一個包,這個包的體積也很大,超過了200m,因此咱們先來安裝它:npm

go get -u github.com/ry/v8worker2
cd $GOPATH/src/github.com/ry/v8worker2
./build.py --use_ccache

安裝deno

安裝好了v8worker2以後,咱們就能夠開始安裝deno了:後端

go get -u github.com/ry/deno/...

編譯

安裝好deno以後,咱們須要編譯一下deno才能運行:

cd $GOPATH/src/github.com/ry/deno
make

運行

好了,咱們來運行一下剛剛編譯好的deno看看效果吧:

./deno testdata/001_hello.js

它的輸出很簡單,就是一行Hello World,由於它的源代碼也很簡單:

console.log("Hello World");

這不就是你熟悉的javascript嗎?

好了,到此爲止,那個別人抱怨學不動的deno已經能夠成功地運行在你的電腦上了,你能夠進入到testdata這個文件夾裏去看一看更多的基於javascript和基於typescript的例子,進一步瞭解deno。目前deno還處於很早期很早期的開發階段,天天都有無數的問題正在被修復,但願deno可以早日普及,使咱們後端基於javascripttypescript語言的開發環境變得更爲高效。

相關文章
相關標籤/搜索