[VS2010 Online]在VS2010中,C#整合IronPython & IronRuby.

[VS2010 Online]在VS2010中,C#整合IronPython & IronRuby.

image_thumb294

 

Why IronPython & IronRuby?

TIOBE 公司最新月份( Jan, 2010 )調查的排名,PythonRuby 的排名高居第七以及第十名。

這兩個語言是目前世界最流行的動態語言,不需編譯且可跨平台,語法簡潔以及易於學習。

image

 

基於上述的優點,Microsoft 將 Python 以及 Ruby 整合.Net Framework,

推出了 IronPythonIronRuby 這兩個動態語言

 

 

在 Visual Studio 2008 中,有人將 IronPython 的編輯器整合到 Visual Studio 內,

推出了 IronPython Studio但是在新版的 Visual Studio 2010,目前還沒有推出相關的

合套件。

 

 

如果你要在.Net Framework 中利用 Python 以及 Ruby 的簡潔程式碼,要怎麼處理呢?

以Python來講,可以依照下列步驟處理:

1. 到 IronPython 的網址下載IronPython 2.6 CTP for .NET 4.0 Beta 2,並安裝這個套件。

2. 在 Visual Studio 2010 開啟一個新專案,這裡我們選擇 WebApplication 專案。

3. 在專案中加入位於安裝目錄中的dll參考,請參考下列紅框的dll。

image

 

4. 然後,我們建立一個python檔案(test.py),內容為:

image

 

5. 在 Page_Load 事件,寫入下列程式碼:

image

程式碼會先建立 IronPython 的 Runtime,然後將 Python 檔案載入(透過 dynamic 的方式,

如果要了解 dynamic 是如何運作,可以參考這篇文章 - [VS2010 Online] var VS dynamic),

接下來就呼叫 IronPython 內的方法。

 

對於編譯流程的處理,您可以參考 IronPython In Action 書籍內第一章的圖片說明:

image

 

6. 如果你想在 IronPython 檔案內設中斷點來 debug,必須加上兩行程式碼:

image

 

然後,你就可以在程式碼中設定中斷點來 debug:

image

 

IronRuby的做法

同樣地,IronRuby也是相同作法,同樣得下載IronRuby CTP for .NET 4.0 Beta 2

然後開一個新專案,參考下圖中的dll檔案:

image

 

在安裝目錄中有一個 examples 目錄,你可以參考目錄中的程式碼作處理:

image

 

目前 MicroSoft 並不打算將 IronPython 以及 IronRuby 的編譯器整合到Visual Studio中,

未來或許有機會,但這些習慣簡單快速編譯器的Python or Ruby Coders,會適應嗎? 這也是值得

觀察的方向。

 

修煉大會,我們下次見。

 

 

參考資料:

1. http://dogbitesme.blogspot.com/2009/07/cironpythonvisual-studio-2010debug.html

2. http://ironpython.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=28125

3. http://ironruby.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=33305

 

 

 

如果您有微軟技術開發的問題,可以到MSDN Forum發問。

如果您有微軟IT管理的問題,可以到TechNet Forum發問喔。