Hi 游客

更多精彩,请登录!

比特池塘 区块链茶馆 正文

Go有望成为区块链的首选语言

次地摔舜
52 0 0
据JAXenter消息,远程工作(FreeLancer)求职网站Upwork的高级副总裁Rich Pearson表示,目前所看到的情况表明,Go有望成为区块链的首选语言,类似于Python和R是数据科学的首选语言。


Go语言的简介


    简介

    Go(又称Golang)是Google开发的一种静态强类型、编译型、并发型,并具有垃圾回收功能的编程语言。

    罗伯特·格瑞史莫(RobertGriesemer),罗布·派克(RobPike)及肯·汤普逊(KenThompson)于2007年9月开始设计Go,稍后IanLanceTaylor、RussCox加入项目。Go是基于Inferno操作系统所开发的。Go于2009年11月正式宣布推出,成为开放源代码项目,并在Linux及MacOSX平台上进行了实现,后来追加了Windows系统下的实现。在2016年,Go被软件评价公司TIOBE选为“TIOBE2016年最佳语言”。目前,Go每半年发布一个二级版本(即从a.x升级到a.y)。[2]

    描述编辑播报

    Go的语法接近C语言,但对于变量的声明有所不同。Go支持垃圾回收功能。Go的并行模型是以东尼·霍尔的通信顺序进程(CSP)为基础,采取类似模型的其他语言包括Occam和Limbo,但它也具有Pi运算的特征,比如通道传输。在1.8版本中开放插件(Plugin)的支持,这意味着现在能从Go中动态加载部分函数。

    与C++相比,Go并不包括如枚举、异常处理、继承、泛型、断言、虚函数等功能,但增加了切片(Slice)型、并发、管道、垃圾回收、接口(Interface)等特性的语言级支持。Go2.0版本将支持泛型,对于断言的存在,则持负面态度,同时也为自己不提供类型继承来辩护。

    不同于Java,Go内嵌了关联数组(也称为哈希表(Hashes)或字典(Dictionaries)),就像字符串类型一样。[2]

    撰写风格编辑播报

    在Go中有几项规定,当不匹配以下规定时编译将会产生错误。

    每行程序结束后不需要撰写分号。

    左大括号不能够换行放置。

    if判断式和for循环不需要以小括号包覆起来。

    Go亦有内置gofmt工具,能够自动整理代码多余的空白、变量名称对齐、并将对齐空格转换成Tab。[2]

    编译器编辑播报

    当前有两个Go编译器分支,分别为官方编译器gc和gccgo。官方编译器在初期使用C写成,后用Go重写从而实现自举。Gccgo是一个使用标准GCC作为后端的Go编译器。

    官方编译器支持跨平台编译(但不支持CGO),允许将源代码编译为可在目标系统、架构上执行的二进制文件。

BitMere.com 比特池塘系信息发布平台,比特池塘仅提供信息存储空间服务。
声明:该文观点仅代表作者本人,本文不代表比特池塘立场,且不构成建议,请谨慎对待。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

成为第一个吐槽的人

次地摔舜 初中生
  • 粉丝

    0

  • 关注

    0

  • 主题

    11