前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >为什么chain33选择用go语言开发?

为什么chain33选择用go语言开发?

原创
作者头像
用户7358413
修改2020-06-18 10:11:26
6350
修改2020-06-18 10:11:26
举报
1240
1240

1. 语言成熟度的考虑

一个语言是一个成熟的语言,一个重要的标志就是开发过非常大型的系统。云计算领域的两个核心系统 docker 和 k8s 都是用go 语言开发的。目前大部分区块链系统也是选择用go语言开发,可以说,要做区块链,go语言是必须要学的一种语言。

2. 开发人员的数量

一个语言的入门成本比较低,但是要精通类库和最佳实践,必须要经过数年的学习时间。所以非常小众的语言肯定不在考虑在内,目前go语言在全世界多如牛毛的语言中排行第十名,这个排名应该算是一门主流的语言。

3. 语言的工程特性

很多语言,看起来非常的漂亮,但是不利于工程实践。工程实践中一个非常重要的要求是,风格的统一。C++ 就是一种非常不利于工程组织的语言,不同C++程序员写的代码可能风格完全不同,甚至看对方代码会不能理解。主要原因是 C++的语法特性非常的多,一个十多年的C++程序员可能都不能精通所有的语法特性。Go在设计的时候,就考虑到了这个问题,一个问题的解决方案基本上都只有一种写法,甚至你把 if 写成这样都是非法的。

go 提供了 gofmt, 会自动格式化代码,这样每个人写出的代码风格都非常一致,互相交流起来就不会有障碍。

4. 面向大部分普通程序员

程序员的水平基本上是一个金字塔结构,中等水平的程序员占大部分。从这个角度来说,你要让大部分人学会函数式编程基本上是一个不可能的事情。选择go语言的一个很重要的原因,就是一个中等水平的程序员,就能写出非常不错的go代码。这主要的原因还是go语言非常简单,特性非常的少,官方类库又非常丰富,大部分程序员都可以非常容易的上手开发。我们团队在GO语言还是beta 版本的时候就开始使用go 语言,当时也加入了非常多的go 语言社区,我们发现,大部分用go的程序员,原来是写脚本语言的。PHP python Javascript 的程序猿非常的多,这也从一个侧面表面,go语言入门的简单性。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
区块链
云链聚未来,协同无边界。腾讯云区块链作为中国领先的区块链服务平台和技术提供商,致力于构建技术、数据、价值、产业互联互通的区块链基础设施,引领区块链底层技术及行业应用创新,助力传统产业转型升级,推动实体经济与数字经济深度融合。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档