用Visual Studio和c#開發以太坊dapp

最近區塊鏈技術引發了個人注意。我剛開始瞭解它,就看到了區塊鏈去中心化架構的巨大潛力,而且它可以簡化各類現有繁瑣的流程,經過各類形式的合約服務器

做爲一名.NET開發人員,我主要使用的是一些提供中心數據源的架構,所以區塊鏈的去中心化概念對我來講是全新的。我很快就看到它如何提供更高的可靠性,完整性和透明化。我開始尋找可讓我開始使用熟悉的操做系統和工具進行開發dapp應用程序的信息:Windows和Visual Studio。架構

最初,我對以太坊區塊鏈,智能合約和dapp應用程序提出了大量疑問。app

  • 全部信息都存儲在哪裏?
  • 智能合約在哪裏部署?
  • Dapp(去中心化應用程序)在哪裏託管?
  • 如何進行測試?
  • 誰能查看並調用個人合約?

儘管網上提供了大量關於區塊鏈技術和區塊鏈開發的資源,但它們並無獲得驗證,也不是很容易理解。因此我不得不深刻挖掘不少信息,包括書籍,白皮書,論壇,文章。如今我可以將典型的ASP.NET應用程序架構與Blockchain去中心化的應用程序架構進行比較:工具

正如你今後圖中看到的,Dapp只不過是一個JavaScript,不管是智能合約仍是區塊鏈中的任何其餘東西。區塊鏈正在扮演服務器角色,除了它根本不是中心,而是複製到運行以太坊虛擬機(EVM)腳本(Geth)的全部節點(機器)的副本。區塊鏈

一旦我對本身的工做方式有了更清晰的瞭解,我就能夠開始將理論付諸實踐了。正如以前所說,想重用個人知識,並使用我所熟悉的工具和操做系統去開發DApps和智能合約。做爲.NET開發人員,我固然正在研究使用Visual Studio。測試

我必須說,關於這方面的文章不多,並且大多數都已通過時了,因此這激勵我作本身的研究。我發現BlockApps公司提供了Microsoft技術堆棧和以太坊區塊鏈技術之間的聯絡。截至今天,你能夠在Microsoft Azure中嘗試Visual Studio集成區塊鏈單個實例。操作系統

爲了嘗試,我須要安裝Visual Studio 2015並從Visual Studio Marketplace下載Solidity擴展。code

以後,就能夠開始編寫智能合約和DApp,這裏只是作簡單的使用說明,若是想深刻了解C#智能合約的開發能夠看這裏的以太坊C#開發實戰入門教程blog

爲了編譯測試和部署,可使用BLOC工具爲Visual Studio項目提供對BlockApps區塊鏈環境STRATO的訪問。BlockApps提供了有關如何使用BLOC和STRATO的說明。教程

BLOC啓動並運行後,您能夠編譯和部署智能合約:

部署後,將爲生成一個測試頁面,容許你測試智能合約:

此測試頁面與您部署的智能合約是Dapp的一個示例。

做爲創建本身的區塊鏈環境的替代方案,BlockApps還能夠提供在Microsoft Azure上分離STRATO環境的功能。它稱爲STRATO Blockchain Individual Instance,它將由一個節點組成:

Microsoft Azure訂閱之上的當前估計價格範圍從每個月132.51 CAD到1798.11 CAD,具體取決於虛擬機配置 - 核心數,RAM數,磁盤數,磁盤大小等。

以後,您能夠將Visual Studio項目指向新的Azure實例,而後就能夠開始在那裏部署智能合約:

若是你已經啓動並運行本地BLOC,則能夠將config.yaml更改成指向Azure實例。

如你所見,Visual Studio集成適用於DApps開發。 即便須要額外的工具來設置開發環境,如今微軟將使用新的針對以太坊區塊鏈產品。 是時候上岸了,成爲微軟平臺的早期採用者了。

相關文章
相關標籤/搜索