用Visual Studio和C#开发以太坊应用程序

最近区块链技术引发了个人注意。我刚开始了解它,就看到了区块链去中心化架构的巨大潜力,而且它可以简化各类现有繁琐的流程,经过各类形式的合约php

做为一名.NET开发人员,我主要使用的是一些提供中心数据源的架构,所以区块链的去中心化概念对我来讲是全新的。我很快就看到它如何提供更高的可靠性,完整性和透明化。我开始寻找可让我开始使用熟悉的操做系统和工具进行开发dapp应用程序的信息:Windows和Visual Studio。java

最初,我对以太坊区块链,智能合约和dapp应用程序提出了大量疑问。node

  • 全部信息都存储在哪里?
  • 智能合约在哪里部署?
  • Dapp(去中心化应用程序)在哪里托管?
  • 如何进行测试?
  • 谁能查看并调用个人合约?

尽管网上提供了大量关于区块链技术和区块链开发的资源,但它们并无获得验证,也不是很容易理解。因此我不得不深刻挖掘不少信息,包括书籍,白皮书,论坛,文章。如今我可以将典型的ASP.NET应用程序架构与Blockchain去中心化的应用程序架构进行比较:python

正如你今后图中看到的,Dapp只不过是一个JavaScript,不管是智能合约仍是区块链中的任何其余东西。区块链正在扮演服务器角色,除了它根本不是中心,而是复制到运行以太坊虚拟机(EVM)脚本(Geth)的全部节点(机器)的副本。react

一旦我对本身的工做方式有了更清晰的了解,我就能够开始将理论付诸实践了。正如以前所说,想重用个人知识,并使用我所熟悉的工具和操做系统去开发DApps和智能合约。做为.NET开发人员,我固然正在研究使用Visual Studio。android

我必须说,关于这方面的文章不多,并且大多数都已通过时了,因此这激励我作本身的研究。我发现BlockApps公司提供了Microsoft技术堆栈和以太坊区块链技术之间的联络。截至今天,你能够在Microsoft Azure中尝试Visual Studio集成区块链单个实例。程序员

为了尝试,我须要安装Visual Studio 2015并从Visual Studio Marketplace下载Solidity扩展。web

以后,就能够开始编写智能合约和DApp。mongodb

为了编译测试和部署,可使用BLOC工具为Visual Studio项目提供对BlockApps区块链环境STRATO的访问。BlockApps提供了有关如何使用BLOC和STRATO的说明。c#

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开发。 即便须要额外的工具来设置开发环境,如今微软将使用新的针对以太坊区块链产品。 是时候跳上板,成为微软平台的早期采用者了。

======================================================================

若是你想立刻使用c#开发以太坊dapp,能够学习下面的教程:

C#以太坊,主要讲解如何使用C#开发基于.Net的以太坊应用,包括帐户管理、状态与交易、智能合约开发与交互、过滤器和事件等。

其余区块链教程:

  • php以太坊,主要是介绍使用php进行智能合约开发交互,进行帐号建立、交易、转帐、代币开发以及过滤器和事件等内容。
  • web3j教程,主要是针对java和android程序员进行区块链以太坊开发的web3j详解。
  • 以太坊教程,主要介绍智能合约与dapp应用开发,适合入门。
  • 以太坊开发,主要是介绍使用node.js、mongodb、区块链、ipfs实现去中心化电商DApp实战,适合进阶。
  • python以太坊,主要是针对python工程师使用web3.py进行区块链以太坊开发的详解。
  • EOS智能合约与DApp开发入门教程,内容涵盖EOS工具链、帐户与钱包、发行代币、智能合约开发与部署、使用代码与智能合约交互等核心知识点,最后运用react和各知识点完成一个便签DApp的开发。

汇智网原创翻译,转载请标明出处。这里是原文

相关文章
相关标签/搜索