建议和反馈

请填写你的反馈内容

如何构建区块链应用

2020-02-20 ·607次阅读 ·读完需要10分钟

今天,我将向您展示如何构建您的第一个区块链应用程序!让我们创建一个由以太坊智能合约支持的待办事项列表。首先,我们将使用Solidity编程语言创建一个智能合约。然后,我们将针对智能合约编写测试,并将其部署到区块链。最后,我们将为todo列表创建一个客户端应用程序。


    区块链应用程序如何工作?

    我选择了本教程的待办事项列表应用程序,因为它是学习任何新编程语言的最常用方法之一。它将教我们如何从区块链读取和写入数据,以及执行将控制待办事项列表应用程序行为的业务逻辑。它将教您有关区块链如何工作以及如何编写以太坊智能合约的基础知识。

    为了了解区块链应用程序是如何工作的,让我们首先来看待办事项列表如何作为Web应用程序工作。要访问待办事项列表,您将使用Web浏览器,该浏览器将通过Internet与Web服务器进行通信。服务器包含待办事项列表的所有代码和数据。

    Web应用图

    以下是在服务器上找到的内容的列表:

    • HTML,CSS和JavaScript中的客户端文件

    • 负责应用程序业务逻辑的后端代码

    • 将任务存储在待办事项列表中的数据库

    该服务器是一个中央实体,可以完全控制应用程序的各个方面。拥有对服务器的完全访问权限的任何人都可以随时更改代码或数据的任何部分。区块链应用程序的工作方式完全不同。待办事项列表中的所有代码和数据都不位于中央服务器上。相反,它分布在整个区块链上。所有代码和数据在区块链上都是共享且不可更改的。

    为了说明这一点,让我们检查一下基于区块链的待办事项清单将如何工作。

    区块链应用图

    要访问区块链待办事项列表,我们将使用网络浏览器与客户端应用程序对话,该应用程序将以HTML,CSS和JavaScript编写。客户端应用程序将不直接与后端Web服务器通信,而是直接与区块链通信。

    什么是区块链?

    区块链是彼此对话的计算机或节点的对等网络。这是一个分布式网络,所有参与者都承担着运行网络的责任。每个网络参与者都在区块链上维护代码和数据的副本。所有这些数据都包含在称为“块”的记录束中,这些记录被“链接在一起”以构成区块链。网络上的所有节点确保此数据安全且不可更改,这与集中式应用程序不同,该应用程序可以随时更改代码和数据。这就是使区块链如此强大的原因!由于区块链负责存储数据,因此从根本上讲它是一个数据库。而且由于这是彼此通信的计算机网络,所以它是网络。

    我还要强调传统Web应用程序和区块链应用程序之间的另一个基本区别:您不是区块链网络的用户,而是应用程序本身的用户。该应用程序不管理任何用户数据。那是区块链的责任!

    什么是智能合约

    区块链上的所有代码都包含在智能合约中,这些合约是在区块链上运行的程序。它们是区块链应用程序的基础。我们将在本教程中编写一个智能合约来增强我们的待办事项清单。它将负责从区块链中获取待办事项列表中的所有任务,添加新任务并完成任务。

    智能合约是用一种称为Solidity的编程语言编写的,它看起来很像JavaScript。智能合约中的所有代码都是不可变的或不可更改的。将智能合约部署到区块链后,我们将无法更改或更新任何代码。这是一项设计功能,可确保代码不受信任和安全。我经常将智能合约与网络上的微服务进行比较。它们充当从区块链读取和写入数据以及执行业务逻辑的接口。它们是可公开访问的,这意味着有权访问Blockchian的任何人都可以访问其界面。

    区块链待办事项列表如何工作

    让我们回顾一下我们将在本教程中构建的应用程序如何工作。我们将为待办事项列表创建一个客户端应用程序,该应用程序将直接与区块链对话。在本教程中,我们将使用以太坊区块链,我们可以通过将客户端应用程序连接到单个以太坊节点来访问该区块链。我们将在Solidity中编写一个智能合约,为待办事项列表提供支持,并将其部署到以太坊区块链中。我们还将使用以太坊钱包使用我们的个人帐户连接到区块链网络,以便与待办事项列表应用程序进行交互。

    应用预览

    这是我们将在本教程中构建的待办事项列表应用程序的预览。我们将能够列出待办事项列表中的所有任务,创建新任务并完成它们。

    以太坊待办事项清单申请

    安装依赖项

    现在,让我们安装构建项目所需的所有依赖项。首先,我们将建立一个人区块链以在本地开发应用程序。

    Ganache个人区块链

    依赖关系是个人区块链,它是可用于模仿公共区块链行为的本地开发区块链。我建议将Ganache用作您的以太坊开发的个人区块链。它将允许您部署智能合约,开发应用程序并运行测试。它可以在Windows,Mac和Linux上作为桌面应用程序和命令行工具使用!

    在本教程中,我将引导您设置桌面应用程序。您可以在此处找到适用于您的操作系统的最新版本。下载存档的程序包后,解压缩安装程序并运行设置步骤。安装完毕后,每次打开它都应该看到以下屏幕:

    Ganache个人区块链应用

    好极了!

    评论(0)问答(0)
    请先登录或注册

    请先登陆或注册

    相关推荐

    幸运飞艇五码计算方法+方法群6139371

    幸运飞艇五码计算方法+方法群6139371......
    笑里斩情仇 · 2020-04-01
    16阅读 · 0赞赏 · 0问答

    幸运飞艇实战个人技巧+方法群6139371

     幸运飞艇实战个人技巧+方法群6139371......
    笑里斩情仇 · 2020-04-01
    20阅读 · 0赞赏 · 0问答

    BPassword介绍

    BPassword介绍    BPassword的由来,现阶段各个app都需要账号密码,都使用同一个账号密码又不太安全,不同的账号密码就会导致账号密码太多难以记......
    李万胜 · 2020-03-31
    702阅读 · 0赞赏 · 0问答

    BPassword测试版简单实用教程

    BPassword简单使用教程1.测试app下载,访问链接https://testflight.apple.com/join/co4IQ0Rc 执行第一步,下载完TestFlight,执行第......
    李万胜 · 2020-03-31
    1438阅读 · 0赞赏 · 0问答

    注册即送矿机,可挖矿的区块链社交游戏

    星际时代是什么?星际时代是基于区块链,以"挖矿"为核心的一款社交类游戏。通过购买矿机的方式来进行挖矿。通过挖矿的行为,可以获得HDAG的奖励。获得的HDAG可以进行交易或用于钱包中......
    moonlight · 2020-03-27
    580阅读 · 0赞赏 · 0问答

    星际时代矿机,一款不需要电费和运维的矿机、注册就送矿机,你心动了吗?

    [![](https://www.liankexing.com/Public/Uploads/2020-03-27/5e7d565f999ec.png)](http://harmonydag.com)......
    moonlight · 2020-03-27
    653阅读 · 0赞赏 · 0问答

    3894

    LK币

    28

    粉丝

    115

    笔记

    感谢"区块链论坛"

    这篇精彩的笔记,目前已经帮助

    • 0
    • 0
    • 6
    • 0
    • 7
    喜欢0
    链客社群 加入

    微博进入

    商务合作>

    广告投放>

    公司名称:北京链客行科技有限公司

    联系方式:010-67707199

    ICP备案号:京ICP备18032136号

    Copyright:链客区块链技术问答社区 版权所有

    感谢您的提问,问题被社区永久收入以便新人查看。一定要记得采纳最佳答案哦!加油!

    感谢您的善举,每一次解答会成为新人的灯塔,回答被采纳后获得20算力和相应的LK币奖励

    您将赞赏给对方2LK币的奖励哦!感谢您的赞赏!

    您将赞赏给对方2LK币的奖励哦!感谢您的赞赏!