Welcome to Node.JS v0.10.0

伴隨著官方公告,nodejs終於也邁向了v0.10最新的穩定版本

想快速了解新版的變動,可以直接看官方公告或是對岸的cnode成員的翻譯文

不外乎是改良與效能改進,不過v0.10最大的改變在於改良了原有的stream,所以我也 只打算在這邊提關於Stream2的部份,如果是想了解其他部分的話,可以跳過這邊直接看上面列的那兩篇文章,或是官方之前寫的介面變動說明

除了原有的ReadStream, WriteStream之外,加入了DuplexTransform兩種新的類別。Duplex就是同時有Read & Write的功能,而Transform是更進一步,當你需要"在中間動點手腳"的時候用的,譬如zlib就是繼承Transfrom來實作的。

稍微列一下大概的用法,Duplex必須實作read & _write兩個方法,然後Transform則是transform

基本上就是個能跑秀個樣子的範例 XD,想看一下實際的程式,Duplex可以參考net,然後Transform則是zlib,使用介面與舊版是相容的(理論上 XD),不過新版之後的ReadStream使用方法有變動,所以如果你是用舊的方式Listen 'data', resume() and pause(),都會切回舊的stream。

然後v0.10中,crypto也已經支援Stream了,所以之後加/解密之類的動作,都可以直接pipe過去就可以了,相當方便,再加上原本的fs, net, http, tls,都可以直接用stream來互相溝通了 :)

想知道更多有關v0.10的話,可以看一下之前Issac在Airbnb的分享

Ferrari Lee

Read more posts by this author.

Subscribe to Ferrari != Ferrari

Get the latest posts delivered right to your inbox.

or subscribe via RSS with Feedly!