就在你認爲Redmond不可能更瘋狂的時候,今天他們介紹了一個 VS 插件工具,Visual Studio的node.js工具。node
NTVS(Node.js Tools for Visual Studio) 運行於VS2012或者VS2013。一些node.js的愛好者已經從PTVS(Python Tools for Visual Studio)轉向並開始爲VS作些node工具。同時,PTVS團隊也在node.js整合上下功夫,因而他們都專一於NTVS使之成爲一個社區項目。NTVS是由給你帶來PTVS的相同團隊開發的,而且獲得了來自Red Gate的Bart Read(他開發了Node Packaged Modules圖形用戶界面),來自Clickberry的Dmitry Tretyakov的幫助,他們作了一些調試與功能修復。web
NTVS從開始就是開源的,而且從一開始就採納貢獻。它支持編輯,智能感知,分析,npm(節點模塊封裝),本地與遠程調試(當服務器運行於Windows/MacOS/Linux),以及發佈到Azure網站和雲服務。npm
他們如何作到這些是至關驚人的,因此我建議你下載而且試用它,由於其中的一些內容(即便這裏給出的只是最第一版)是很是很是聰明的。segmentfault
NTVS結合了V8分析應用和Visual Studio的報告特性以告訴你你的程序哪裏消耗它的時間。瀏覽器
提示:看到上面File|New Project的對話框了嗎?Visual Studio按照開發語言組織類型,因此node.js在JavaScript分類下。但你也注意到在Visual Studio中的Python,Django,C#分類下的iOS和Android,TypeScript,VB,F#等分類。服務器
讓我印象深入的事之一是,他們將node.js整合進Visual Studio中時並無新建或者重作已經在Visual Studio中完善的功能。這就是node,運行在node.exe,使用V8調試器,使用V8分析器由於這些就是人們在使用的。可是,例如,NTVS能夠從V8分析器獲得輸出而且使用Visual Stuido分析報告工具顯示結果。不必推倒重來,只要使用合適的工具來完成工做。網絡
讓咱們來看個例子。編輯器
從 http://nodejs.org 下載並安裝node。工具
接下來,從https://ghost.org/download/下載Ghost並解壓縮到某地。網站
從install node for Visual Studio下載並安裝NTVS在Visual Studio根目錄。
可選項。安裝http://vswebessentials.com,由於它會使VS中的網絡開發更易展現。
從Visual Studio開始,順序是File |New Project,點擊JavaScript,而後選擇「From Existing Node.js code」。
將NTVS指向你的Ghost目錄。
而後設置node.js開始文件爲index.js,點擊Next,保存項目文件而且完成。
這時,你已經在VS中設置了Ghost。
隨記:自從我獲得網頁要素後我也獲得一個不錯的好處—屏幕Markdown編輯器。
從這裏,點擊F5就能夠調試,或者Ctrl-F5直接開始。固然注意在右下角的工程屬性窗口中顯示的node路徑,端口還有開始文件。你固然能夠修改它們。
這裏我在本地運行Ghost。你能夠看到node的路徑,ghost.js文件和個人瀏覽器。
你將從方法簽名中獲取實現與幫助的提示。
NTVS包含了對node應用程序完整的調試支持。這包含了逐步調試,斷點調試,「異常中斷」,還有本地變量窗口,觀察窗口,即時窗口和調用棧工具窗口。
你能夠像其餘語言的服務同樣處理異常。看下面的對話框,node.js異常和其餘異常列在處理與未處理代碼的分類中。
經過node V8調試器,調試始終如它一般的方式運行。除非Visual Studio經過另外的套接字鏈接調試器(記住,你甚至能夠在Linux或者Mac系統中像這樣遠程運行調試node.js)而且將V8如何作調試轉義爲Visual Studio如何作調試。這種感覺是無縫銜接的。
經過這個截圖,你能夠看到node.exe已經被調試了,我運行了Ghost。你能夠看到個人調用棧和本地變量在觀察窗口。我能夠查看變量,分步調試而且在你調試一個網絡應用程序的時候作任何你想作的事。
使用npm的體驗也是至關酷。NTVS始終監視文件系統,因此以命令行或者節點直接窗口方式運行npm的話是更受歡迎的方式,Visual Studio中將看到變化。
你也可使用npm包管理對話框而且搜尋庫,圖形化安裝包。這取決於你。
這是一個包在安裝中…
物理上的節點模塊和這些模塊的操做是純代碼化的…VS並不涉及或者說關心它。可是,Visual Studio的解決方案資源管理器(Solution Explorer)中也以邏輯視圖呈現物理視圖。
提示:我很喜歡這點。我認爲它有潛力,我更喜歡.NET的引用也如此處理。物理的和邏輯的依賴樹顯示了NuGet包。這幫助我更好地理解項目。
還有更多。有個REPL互動窗口,你能夠如其餘網絡工程同樣,與ASP.NET工程使用相同的發佈嚮導來發佈網絡工程。你也能夠直接發佈node.js應用程序到Azure,使用Git或者Visual Studio發佈。
你也能夠在其它機器遠程調試node實例,經過引入遠程調試代理來啓動node。
node.exe RemoteDebug.js -machineport 5860 script.js
正如說起的,你能夠在運行於任何服務器操做系統的Visual Studio和node上遠程調試。
我我的對於Visual Studio正轉變爲(對我而言,在短時間內)十足的組件語言和開發環境工廠感到很是高興。
NTVS在Apache許可下是徹底開源的而且他們歡迎貢獻與錯誤報告。這是最第一版但它很棒。去使用它吧。祝福全部參與的人!
原文:Introducing node.js Tools for Visual Studio - Scott Hanselman
轉載自:伯樂在線 - EluQ