Skip to content

Latest commit

 

History

History
47 lines (24 loc) · 4.04 KB

区块链设计模式入门.md

File metadata and controls

47 lines (24 loc) · 4.04 KB

区块链设计模式入门

在应用程序中应用最佳实践

标签: 区块链

原文链接

Arun Aravind, Laura Bennett, Varun Ojha

发布: 2020-05-11


简介

区块链是一个不可改变的共享分类账,用于记录交易,跟踪资产以及建立信任。资产可以是有形资产(例如,房屋、汽车、现金或土地),也可以是无形资产(例如,知识产权、专利、版权或品牌)。您可以在区块链网络上跟踪和交易几乎任何有价值的东西,从而降低风险并削减所有相关成本。本文介绍了基于区块链的应用程序的一组设计模式。区块链具有独特的特性,包括不变性、不可否认性、数据完整性和透明性。

区块链是一种新兴技术,可实现新形式的分散式软件架构,其中的分布式组件可以就共享系统状态达成协议,而无需信任某个中央集成点。区块链提供了一种共享基础架构,可用于执行程序(称为智能合约)和存储数据。这项新兴技术要求应用相应的模式,以便在设计软件架构或应用程序的过程中使用区块链。

为何设计模式对于软件开发者很重要

设计模式通常会为软件开发者定义最佳开发实践。设计模式本身可作为一般问题(此例中为区块链领域的问题)的解决方案。在软件工程中,设计模式是可重复使用的解决方案,用于解决在软件设计过程中在给定上下文中经常出现的问题。设计模式可定义一些约束,用于限制架构元素(处理、连接器和数据)的角色以及这些元素之间的交互。

设计模式有两种主要用途:

  • 定义通用平台:设计模式可以为特定情况提供标准术语。

  • 最佳实践:自从面向对象的编程方法出现以来,设计模式就已经存在。经验不足的开发者可以利用设计模式中记录的最佳实践,更快、更轻松地学习软件设计。开发者应该熟悉编程和软件设计原则。

区块链设计模式

IBM Developer 一开始只提供了这三种设计模式,但我们预计这个列表会随时间的推移而不断扩大。您可以将这些设计模式的上下文应用于端到端应用程序。

基于区块链的应用程序的非卡顿式 UI 设计

基于区块链的应用程序的非卡顿式 UI 设计 首先介绍了与高响应度的复杂后端 API 进行交互时困扰传统用户界面的问题。随后,此设计模式介绍了一些关键概念和用于缓解目前问题的方法,然后提供了端到端架构和解决方案概述来说明如何将不同的解决方案组件组合在一起以创建交互式用户界面。

基于区块链的应用程序的异步 API 设计

基于区块链的应用程序的异步 API 设计 是上述非卡顿式 UI 设计模式的延续。此模式更深入地研究了异步后端 API,并讨论了 API 设计及其与其他组件(例如,链外存储和事件服务)的交互。

安全同步模式

安全同步模式 涵盖了事件服务的设计,您可以使用该服务来安全地将区块链与应用程序的链外存储进行同步。然后,您可以利用这种链外存储来运行功能查询/搜索。您还可以将事件服务用作集成点,以便设置数据仓库或将流数据作为输入提供给计算框架(例如,用于学习和分析的 Apache Spark)。

本文翻译自: Getting started with blockchain design patterns(2020-03-27)