go是Google开发的一种静态强类型、编译型、并发型,并具有垃圾回收功能的编程语言,并且是基于Inferno操作系统所开发的,支持Linux、macOS、Windows等操作系统。

相关推荐:《golang教程

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

罗伯特·格瑞史莫、罗勃·派克(Rob Pike)及肯·汤普逊于2007年9月开始设计Go,稍后Ian Lance Taylor、Russ Cox加入项目。Go是基于Inferno操作系统所开发的。Go于2009年11月正式宣布推出,成为开放源代码项目,支持Linux、macOS、Windows等操作系统。在2016年,Go被软件评价公司TIOBE 选为“TIOBE 2016 年最佳语言”。

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

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

不同于Java,Go原生提供了关联数组(也称为哈希表(Hashes)或字典(Dictionaries))。

更多相关文章,请访问go语言教程栏目!

更多相关文章

  1. go语言中普通函数与方法的区别是什么?
  2. go语言中run与build命令的区别是什么?
  3. 解决GO语言安装air框架时遇到go: inconsistent vendoring问题
  4. Go语言有没有优势?
  5. go语言导包时“.”和“_”的区别是什么?
  6. go语言和Java语言的区别是什么?
  7. go语言和python有什么区别?
  8. go语言实现string转float的方法
  9. go是开源语言吗?

随机推荐

  1. android service 精辟解说(摘)
  2. Android 横屏时禁止输入法全屏
  3. 利用Android的Log 演示一个activity的生
  4. android 读写文件数据
  5. 关于屏幕解锁的实例
  6. Android 隐藏系统状态栏和标题栏
  7. Android(安卓)AsyncTask
  8. IDEA Android studio toString() 生成Jso
  9. Android 数据绑定(Data Binding)详解
  10. SDK/ADT历史版本