区块链是目前一个比较热门的新概念,蕴含了技术与金融两层概念。今天只说重点,来看看区块链项目开发的难点有哪些?
开发转变和难点
A、开发思维的转变
与传统网络服务不同的是,区块链开发不再以面向服务为主要关注点,而是面向账本和交易。
开发者面对的不再是以高可用高并发的应用程序为主要指标,而是切换到了面向用户,关注用户友好性和开发扩展性的终端程序开发。
所以高并发高性能不再是区块链终端的核心指标,安全性、可扩展性、友好性成了主要指标。
此图是一个适用于联盟链/私有链项目的工作流程。
B、开发难点
目前来讲,区块链项目开发的难点有三个:
1. 开发人力资源储备不足
目前比较成熟的技术体系有比特币及衍生技术体系、以太坊、超级账本HyperLedger fabric、比特股Bitshares、瑞波Ripple和未来币NXT。其中前三个是最有影响力的区块链项目。比特币以及衍生技术多以C++语言进行开发;以太坊支持大部分主流语言,官方以Go为主,也有其他分支的项目如Rust语言的Parity钱包;超级账本目前以Go为主。
从目前上海地区的区块链从业人员来看,保守估计在400~500左右。按一半为开发人员计算,也才200多个,面对巨大的市场需求,人才是极度稀缺的。
由于C++目前仅在金融和游戏领域有部分需求,所以C++工程师不多,尤其是高水平的C++工程师就更少了。Go作为新兴语言,发展势头很猛,但是Go的生态也不如Java大。
如果从Java的角度看,如何把其生态利用起来,目前区块链还没有做到那个地步。
综合来看,区块链在技术方面与其他技术的结合还有待探索。
2. 区块链是交叉学科,需要各方面工程实践的经验
在实践方面,我们希望区块链从业人员同时了解技术和金融业务,这个对人员的素质要求比较高,相应的符合标准的人就更少了。
3. 关于对各个区块链技术体系理解的偏差。区块链技术和概念日新月异,闭门开发可能会走到死胡同,如何保持一部分精力更新知识体系,同时保证开发进度对开发人员是有较大挑战的。
区块链作为一门新兴的技术,涵盖了去中心化、去信任、共享经济、分布式计算、分布式存储等多方面的内容,考验着技术人员的学习和思考能力。在未来,区块链将同人工智能一起,会影响到普通人生活的方方面面。
关注佳源信息,关注更多资讯。