Monday, September 30, 2013

Node.js 初試

最近工作上開始要用到Node.js,開始研究之後,就想測測看Node.js跟我熟悉的C#差別在哪,於是隨便找了個Fibonacci數列來測試,程式大概是長的類似這樣。
var fib = function (n) {
 if(n==0) return 0;
 if(n==1) return 1;
 return fib(n-1)+fib(n-2);
}

於是各用C#與Node.js寫了測試程式,長得像下面這樣。
node_02

然後跑出來的結果是這樣
node_01

老實說真的出乎我意料之外,C#在這個測試上居然慢了三倍左右
但是只跑這個測試我想是不夠完整的,所以接下來有空我還會多測一些比較看看。

update :
感謝網友"魔力比"的留言建議,我重新用C#編譯出來的執行檔來跑一次測試
果真跟之前測試差距很多,結果如下,我各跑五次求平均
node_03

實際計算起來的差距,C#(framework 4.5)比node.js慢了2%左右,可說是速度上差不多的
網友"魔力比"說如果在framework 2.0的話速度會更快,我這邊沒空測所以沒數據
有興趣的人可以試試。

4 comments:

  1. 請問版主的C#版數據是否直在IDE環境下直接執行測得的?

    ReplyDelete
  2. VS 開 console application 寫好然後 run,有其他建議的方法嗎 ?

    ReplyDelete
  3. 因為在VS裡直接run, 會引响執行效能...
    我是直接開一個Console跑C#版,
    .NET 4.5比Node.Js差一點, .NET 2.0 比Node.Js還快.

    ReplyDelete