木星链 木星链
Ctrl+D收藏木星链
首页 > 币安下载 > 正文

区块链:区块链应用开发组件:助力低代码开发

作者:

时间:1900/1/1 0:00:00

区块链技术在经历了十余年的发展后,渐呈“燎原之势”,不断在各行业落地生根。但同时,从技术的角度看,区块链应用开发仍然有着较高的门槛,存在不少痛点,在应用开发各个环节上的用户体验、效率及安全有待提升。

在社区中,我们也经常听到关于区块链应用开发的诸多问题:

如何在solidity代码中将账户地址和字符串互转?

现有的solidity代码是否支持高级语言中常用但相对复杂的数据结构,例如可迭代的mapping?

是否可以提供一套基于明确应用场景的可供复用、参考的智能合约代码?

solidity智能合约如何快速编译为abi和binary文件?

如何在使用gradle构建的区块链应用中快速编译智能合约代码,而不必使用编译脚本?

写完智能合约后,如何编写区块链应用?

是否可以提供一个便于开发的区块链应用代码生成器?

编程小白如何快速上手区块链应用开发?

...

这些问题既有与合约开发相关的,也有与应用开发相关的。基于此类场景问题,结合自身实践经验,微众银行区块链正式开源区块链应用开发组件WeBankBlockchain-SmartDev,期望从区块链应用开发中的各个环节入手,多维度地提高区块链应用的开发效率,帮助开发者成为区块链应用开发的“10倍工程师”。目前,整个组件基于solidity语言开发。近期微众银行区块链还开源了Liquid合约语言,未来我们也会适配Liquid语言。

长沙经开区区块链产业园预计明年6月投入使用:12月18日消息,长沙经开区星沙产业基地区块链产业园项目负责人张学成表示,长沙经开区区块链产业园一期项目已完成主体结构、钢结构施工,项目幕墙施工总体完成90%,完成总体形象进度约95%,预计今年底完成整体形象面施工,明年6月正式投入使用。(星沙时报)[2022/12/18 21:52:32]

什么是应用开发组件?

区块链应用开发组件WeBankBlockchain-SmartDev的研发初衷在于打造低代码开发的组件库,全方位助力开发者高效、敏捷地开发区块链应用。WeBankBlockchain-SmartDev包含了一套开放、轻量的开发组件集,覆盖合约的开发、编译、应用开发等环节,开发者可根据自己的情况选择相应开发工具,提升开发效率。

从合约开发的视角来看,对于常用的功能,不必再重复造轮子,只需按需引用,参考“智能合约库”中的代码,就可以引入相应功能,为合约开发的效率和安全保驾护航。对于非基础性功能,例如业务场景,我们也提供了代码模板供参考复用。

从合约编译的视角来看,对于正在开发中的区块链应用,不必再依赖控制台对合约代码进行编译,只需使用合约gradle编译插件就地编译,便可立即得到abi、bin和java合约。这些编译物直接被输出到Java项目中,省去了拷贝的步骤,提供了如开发原生java程序一样迅捷、丝滑的体验。

从应用开发的视角来看,从智能合约到项目搭建,包含了大量机械而重复的工作,如创建项目、引入依赖、编写配置代码、访问智能合约、编写相关实体类等。相形之下,通过WeBankBlockchain-SmartDev,开发者可以选用应用开发脚手架。脚手架会根据智能合约自动生成项目工程。工程中已经包含了上述逻辑代码,开发者只需基于该工程继续添加业务逻辑代码,聚焦在自身的业务上即可。

南天信息:公司已在银行等领域推进实施区块链应用:南天信息在回答投资者问题时表示,该跨境金融区块链服务平台并非由南天信息开发。在区块链领域,南天信息响应国家发展区块链的号召,积极布局区块链,目前已经研发了南天区块链基础服务应用平台(NBaaS),能够帮助区块链业务开发用户快速构建稳定、安全的生产级区块链环境,并实现业务数据的快速上链。目前,公司已在不动产、再保险、银行等领域推进实施区块链应用,感谢您对公司的关注与支持。[2020/7/23]

应用开发组件包含哪些子组件?

智能合约库组件

“天下苦solidity久矣”,在solidity智能合约开发过程中,如果没有一套可参考的模板和代码库,不仅影响开发的效率,同时可能因为对智能合约开发的不熟悉而引入安全风险。智能合约库涵盖了从基础类型到上层业务的常见solidity库代码,用户可根据实际需要进行参考、复用。智能合约库的层级结构如下:

金色晨讯 | WIPO:今年已通过242件区块链专利:1.肖磊:CBOE停止比特币期货交易说明比特币在拥有严格监管的市场优势并不明显

2.BCH社区筹款接近800 BCH,决定将目标额提升至1600 BCH

3.国际清算银行经济顾问:传统银行难以承受加密和相关货币技术带来的竞争水平

4.郎咸平:Libra若选择与央行合作进入清算和支付行业,将对支付宝等带来明显冲击

5.以色列当局逮捕两名加密货币的兄弟 媒体称两者与2016年Bitfinex黑客攻击有关

6.上海逮捕一自建虚拟货币交易平台的团伙

7.以太坊联合创始人:Libra是披着去中心化羊皮的集中化的狼

8.欧洲央行行长:将对Facebook的加密货币进行监管

9.WIPO:今年已通过242件区块链专利[2019/6/24]

1、基础类型层:提供了常见的solidity内置类型的复杂操作库函数,涵盖了数学运算,整型转换操作、字符串操作、地址操作合数组操作等。在增强内置基础类型功能的同时,还为智能合约的安全保驾护航。

2、数据结构层:提供了其他高级编程语言中常见、而solidity语言中未提供的基础数据结构,让智能合约开发如虎添翼。

3、通用功能层:作为合约开发的“粘合剂”,现阶段整合了CRUD、Table库,并提供了密码学库,极大地便利了智能合约业务逻辑中的相关操作。

4、上层业务层:提供了积分和存证这两个常见业务场景的智能合约模板。上述智能合约模板代码遵循了高内聚、低耦合、易于升级的设计理念,既可供智能合约初学者学习和参考,也能给经验丰富的智能合约开发者带来启迪和思考。

声音 | 中国薯业专家白仲夫:中国马铃薯销售需加入“区块链”模式才能有更大国际市场:据中新网报道,中国知名薯业专家白仲夫称,中国的马铃薯销售必须有区块链的介入,才能有更大的国际市场。随着科技的逐步发展,“区块链”的销售模式将会有更大的用武之地。内蒙古农业大学博士生导师盖志毅也认为,“区块链”赋能农业,的确能够对中国马铃薯的销售便捷起到作用[2018/12/3]

智能合约编译插件

在以往的FISCOBCOS开发中,智能合约需要编译,首先要安装控制台,然后在调试阶段,需要把合约导入控制台,编译后再把java文件拷贝出来调试。且只要合约有变更,此流程就需要重新执行。因此,我们提供了智能合约编译插件,用户只需要在项目中调用gradle相关命令,就会自动根据项目中的合约生成abi、bin和java代码,节省了大量宝贵的时间。

应用开发脚手架

区块链应用的开发流程,除了合约开发外、还包括应用开发。其中,应用开发又包括项目建立、引入依赖、配置代码编写、模型类编写、服务类编写、业务逻辑编写等步骤。这些步骤相对繁琐,影响了开发的效率。因此,我们提供了智能合约脚手架,用于一键式生成区块链应用开发工程,降低了应用开发的难度。用户将自己的合约导入脚手架,即可生成对应的应用开发模板工程,包含对应的POJO类、服务类等,用户可基于此直接开发区块链应用项目。

声音 | 狄刚:区块链牺牲效率 应用须看场景:在7月7日于青岛举行主题为“探寻开放与监管新范式”的“2018中国财富论坛”上,中国人民银行数字货币研究所副所长狄刚出席“科技金融始建于规范”讨论环节并发表演讲。谈到科技金融发展遇到的问题时,狄刚表示,没有一个完全正作用的技术,能解决包治百病的。技术它本身是中性的,是为业务需求服务的,不能为了技术而技术,为了金融科技而金融科技,既不要神话它,也要泛化它。要认识到技术也是此消彼涨的,区块链是牺牲冗余、牺牲效率,牺牲一块换取另外一块,没有天上掉馅儿饼的事。要看看场景到底适不适合它,吃这个药的时候,看一下能不能适应得了,而不是为了赶技术时髦而上。[2018/7/7]

应用开发组件使用场景

场景1:智能合约开发

在智能合约开发中,从基础的四则运算到上层的业务场景,都可以使用成熟的、可复用的库。

以四则运算为例,需要判断是否存在溢出的风险,此时可以使用数学相关库LibSafeMathForUint256Utils。

以数据结构为例,在solidity中,mapping类型的key不可被迭代,此时若需要使用对key进行迭代的映射,可以使用mapping相关的库LibBytesMap。

以通用功能为例,如果希望引入哈希、验签等密码学功能,则可以使用Crypto库。

以业务场景为例,如果想实现存证功能,可以参考场景模板Evidence,模板中纳入了相关实现,起到抛砖引玉的效果。

场景2:合约修改与调试

在区块链应用开发、调试过程中,通常需要在项目中用到abi、bin、java合约等内容,并基于这些内容进行相应的调试。如果合约出于调整等原因而需要重新编译,此时不必将合约拷入控制台编译,只需运行相应的gradle指令,就可以生成新的编译物。同时,这些编译物直接嵌在了项目中。如下图示例中,对HelloWorld合约编译后,产生的编译物示例:

场景3:区块链应用开发

假如用户已经写好了智能合约,需要基于智能合约,开发一个提供rest接口的web项目。在这种情况下,用户可以将合约拖入脚手架,一键生成项目。下图是生成的样例工程,包含了必要的配置类、DAO相关代码。开发者只需对项目进行必要的配置,并添加相应的controller等代码,就可以轻松实现上述需求。

开源地址

github代码库地址

SmartDev-Contract智能合约库组件

https://github.com/WeBankBlockchain/SmartDev-Contract?

SmartDev-SCGP智能合约编译插件

https://github.com/WeBankBlockchain/SmartDev-SCGP

SmartDev-Scaffold智能合约应用开发脚手架

https://github.com/WeBankBlockchain/SmartDev-Scaffold

gitee代码库地址

SmartDev-Contract智能合约库组件

https://gitee.com/WeBankBlockchain/SmartDev-Contract

SmartDev-SCGP智能合约编译插件

https://gitee.com/WeBankBlockchain/SmartDev-SCGP

SmartDev-Scaffold智能合约应用开发脚手架

https://gitee.com/WeBankBlockchain/SmartDev-Scaffold

文档地址

SmartDev-Contract智能合约库组件

https://smartdev-doc.readthedocs.io/zh_CN/latest/docs/WeBankBlockchain-SmartDev-Contract/index.html?

SmartDev-SCGP智能合约编译插件

https://smartdev-doc.readthedocs.io/zh_CN/latest/docs/WeBankBlockchain-SmartDev-SCGP/index.html

SmartDev-Scaffold智能合约应用开发脚手架

https://smartdev-doc.readthedocs.io/zh_CN/latest/docs/WeBankBlockchain-SmartDev-Scaffold/index.html

欢迎参与WeBankBlockchain的社区建设:

如项目对您有帮助,欢迎点亮我们的小星星(点击项目左上方Star按钮)。

欢迎提交代码(Pullrequests)。

提问和提交BUG。

如果发现代码存在安全漏洞,可通过以下地址上报:

https://security.webank.com/

标签:区块链SMAARTSMART区块链存证多少钱smartcoinsCosmostartersmart币最新情况

币安下载热门资讯
比特币:金色早报 | 高盛即将提供针对比特币的投资工具

头条▌高盛即将提供针对比特币的投资工具3月31日消息,高盛即将向其私人财富管理集团客户,提供其第一个比特币和其他数字资产投资工具.

1900/1/1 0:00:00
比特币:比特币巩固1万亿美元市值 期货未平仓合约量创下新高

上周,比特币的市场交易价格范围在57168美元-60265美元之间,波动幅度在5.4%左右,值得注意的是,其市值超过1万亿美元已持续了1周时间.

1900/1/1 0:00:00
NEAR:ETH-NEAR彩虹桥发射 什么是彩虹桥?

原文标题:《彩虹桥:常见问题解答》 最近,NEAR小组发布了一个重大公告:?ETH←→NEARRainbowBridge的发射.

1900/1/1 0:00:00
TIC:uniswap V3技术白皮书导读:核心是流动性集中

uniswapV3一公布就引发广泛关注。相对V2来说,逻辑和代码都复杂一些。V3的核心是通过盘口区间提供流动性,解决LP提供流动性时的资金利用率的问题.

1900/1/1 0:00:00
FEI:巴比特观察 丨募资63.9万ETH,现象级DeFi项目FEI遭"白嫖鲸鱼"砸盘

北京时间4月4日凌晨3点,去中心化稳定币协议FEI完成了为期3天时间的GenesisGroup阶段,据悉,此次活动共募集到63.9万ETH,并铸造了13亿FEI.

1900/1/1 0:00:00
OIN:关于Coinbase上市,这里有你想知道的一切

本文来自Forbes,原文作者:TaylorTepperOdaily星球日报译者|Moni 很快,你就能购买帮助您购买比特币的公司的股票了——虽然这句话听起来有点绕口.

1900/1/1 0:00:00