Go 正在参加 2020 年度 OSC 中国开源项目评选,请投票支持!
Go 在 2020 年度 OSC 中国开源项目评选 中已获得 {{ projectVoteCount }} 票,请投票支持!
投票让它出道
已投票
Go 获得 2020 年度 OSC 中国开源项目评选「最佳人气项目」 !
Go 获得 2020 年度 OSC 中国开源项目评选「最佳人气项目」「最积极运营项目」 !
Go 获得 2020 年度 OSC 中国开源项目评选「最积极运营项目」 !
授权协议 BSD
开发语言 Google Go 查看源码 »
操作系统 跨平台
软件类型 开源软件
所属分类 编程语言
开源组织 Google
地区 不详
投 递 者 绿悠悠
适用人群 未知
收录时间 2009-11-11

软件简介

Go 是 Google 开发的一种编译型、并发型,并具有垃圾回收功能的编程语言。

Go 的表现力强、简洁、干净、高效。它的并发机制使它能够轻松地编写程序,从而最大限度地利用多核和网络机器,而它新颖的类型系统则使灵活的模块化程序构造成为可能。Go 快速编译成机器代码,但又具有垃圾回收的便利性和运行时反射的强大功能。它是一种快速的、静态类型化的、编译后的语言,感觉就像一种动态类型化的、解释的语言。

Go 语言是基于 Inferno 操作系统所开发的。Go 语言于2009年11月正式宣布推出,成为开放源代码项目,并在 Linux 及 Mac OS X 平台上进行了实现,后追加 Windows 系统下的实现。

简单的 Hello World 程序:

package main
import "fmt"
func main() {
  fmt.Printf("Hello, 世界\n")
}
展开阅读全文

代码

的 Gitee 指数为
超过 的项目

评论 (60)

加载中
给各位go语言开发者推荐一个最近很火的接口管理工具apipost,很好用,有时间可以试试
08/24 15:22
回复
举报
#Go# 开发一般用什么工具?
2018/07/03 22:36
回复
举报
goland
2019/07/04 20:03
回复
举报
notepad
2019/09/27 11:33
回复
举报
vs code
07/16 00:15
回复
举报
本来很好的C风格语法延续下来类似于Java/JavaScript作些扩充和调整不就完了,#Go##Rust#非得弄得面目全非增加学习难度,真是作死!#Swift#在语法的易学习程度上吊打它们 ,既能解释又能编译执行的特性也非常适合快速开发,现在开源了,苹果那套专有的UI框架不需要学,单做系统级开发应该很不错!
2018/05/05 13:55
回复
举报
package main import "fmt" func main() { fmt.Printf("中毒了") }
2018/05/02 14:22
回复
举报
2018/04/28 16:20
回复
举报
打分: 力荐
2018/04/28 08:40
回复
举报
2018/04/02 11:34
回复
举报
2018/03/09 13:44
回复
举报
更多评论
发表了资讯
08/22 10:06

Go 编译器已默认启用 -G=3,支持泛型

Go 项目代码仓库昨日提交和合并的一个 PR 显示,Go 语言已在 cmd/compile 中默认启用 -G=3。 根据描述,此 PR 将 cmd/compile 的 -G flag 的默认值从 0 改为 3,因此可以使用新的 types2 类型检查器并支持类型参数,即启用了对泛型的支持。旧的类型检查器仍然可以通过 -gcflags=all=-G=0 使用。该变更还更新了回归测试工具,主要是出于对默认行为变化的考虑(例如,types2 类型检查器已知的变更)。 不过,-G=0 模式目前仍在测试...

46
4
发表了资讯
08/18 07:21

Go 1.17 正式发布

Go 1.17 已正式发布。 此版本改进了编译器,具体来说是采用了一种新的函数参数和结果传递方式。官方称此项变化将 Go 程序的性能提升了大约 5%,并将 amd64 平台的二进制包大小减少了大约 2%,未来还计划支持更多平台。 Go 1.17 还增加了对 Windows 上 64 位 ARM 架构的支持,让 Go 开发者能够在更多设备上原生运行 Go。 新版本还增加了 pruned module graphs 功能。官方对此功能的描述为,当 Modules 在其go.mod文件中指定了go ...

34
4
发表了资讯
08/08 08:19

Go 1.16.7、1.15.15 和 1.17 RC2 发布

Go 开发团队近日为三个分支发布了更新,分别是 Go 1.16.7、1.15.15 和 1.17 RC2。 Go 1.16.7 和 1.15.15 是次要版本更新,更新内容包括根据新安全策略进行的安全问题修复。 Go 1.16.7 包含对net/http/httputil软件包的安全修复,以及对编译器、链接器、运行时、go命令和net/http包的错误修复。点此查看详细内容。 Go 1.15.15 的更细内容与 1.16.7 的一致,详情点此查看。 release note:https://golang.org/doc/devel/release#...

4
1
07/28 08:15

鉴于 Go 语言的热门程度,GitHub 提高了 Go 模块的供应链安全性

Go 社区从诞生之初就积极拥抱了 GitHub,如今 GitHub 既是 Go 语言相关项目的代码协作平台,也是发布软件包的地方,也正因如此 Go 编程语言成为了 GitHub 最受欢迎的编程语言之一。为了改善 Go 模块在安全漏洞方面的发现、报告和预防,近日 GitHub 宣布了多项新功能以提升 Go 模块的供应链安全。 根据 GitHub 的说法,他们对 Go 模块在供应链安全方面主要有以下四个方面的改进: Advisories GitHub 的 Advisories Database 是一...

5
3
发表了资讯
07/15 07:54

Go 1.17 RC1 发布,下个月发布正式版

Go 1.17 发布了首个 RC 版本,正式版将于下个月推出。 以下内容摘录自 Go 1.17 release notes。 Go 1.17 包含三个针对语言特性的改进: 支持从 slice (切片)到数组指针的转换 unsafe.Add:unsafe.Add(ptr, len)将len添加ptr并返回更新的指针unsafe.Pointer(uintptr(ptr) + uintptr(len)) unsafe.Slice : 对于*T类型的ptr表达式,unsafe.Slice(ptr, len) 返回一个[]T类型的切片,其底层数组从ptr开始, 其长度和容量为len ……...

5
1
发表了资讯
06/08 09:26

Go Fuzzing 进入 Beta 测试阶段

Go 团队宣布原生的 fuzzing(模糊测试)功能已准备好在其开发分支 dev.fuzz 上进行 Beta 测试。 Fuzzing 属于自动化测试,它通过持续控制程序的输入来暴露诸如 panic 或 bug 之类的错误。这些半随机的数据突变可以发现现有单元测试可能遗漏的新代码覆盖范围,以及很难被注意到的边缘案例的错误。由于模糊测试可以触达这些边缘案例,所以模糊测试对于发现安全漏洞和缺陷特别有价值。 下面是提案 Draft Design 的部分内容: 支持使...

3
6
05/20 08:14

50 万行 Go 代码,美国一组织从 Python 2 迁移到 Go

美国教育非营利组织可汗学院(Khan Academy)方面透露,其已经用谷歌的 Go 编程语言完成了 50 万行代码,以取代此前用 Python 2 编写的后台服务器。根据介绍,可汗学院在其 Goliath 项目下实现了从 Python 2 到 Go 的大转变。Goliath 最初是使用 Python 2 实现的;从 2019 年开始,可汗学院逐步将其迁移到了 Go。 当我们开始 Goliath 项目的时候,团队中没有人知道 Go,只是通过实验验证了 Go 是相较而言更好的选择。今天,我们...

1
8
03/12 08:33

Go 开发者调查报告 2020

Go 开发者调查 2020 新鲜出炉。本次调查收到了 9648 个回复,和 2019 年差不多。有些问题的样本量比其他问题小,这是因为有些问题向所有人展示,而另一些问题仅向随机的一部分受访者展示。 亮点内容 Go 的使用在工作场所和企业中正在不断扩大,有 76% 的受访者在工作中使用 Go,而 66% 的受访者表示 Go 对公司的成功至关重要 总体满意度很高,有 92% 的受访者对使用 Go 感到满意 大多数受访者在不到三个月的时间里感觉到了 ...

32
9
02/28 08:30

基于 Go 编写的恶意软件数量激增 2000%

网络安全公司 Intezer 发布了一份报告,概述了威胁行为者在 2020 年期间使用 Go 恶意软件的情况。其中包括对已经活跃多年的恶意软件和从未被公开报道的恶意软件的代码连接和 IoC 的分析。 该报告指出,自 2017 年以来,用 Go 编程语言编码的恶意软件菌株数量在过去几年中急剧增加了约 2000%。这一发现凸显并证实了恶意软件生态系统的一个普遍趋势,即恶意软件作者已经慢慢从 C 和 C++ 转向 Go。 第一个基于 Go 的恶意软件在 20...

37
9
发表于开发技能专区
02/25 08:30

Go 语言新提案:添加模糊测试支持

Go 语言增加了支持模糊测试 (Fuzz Test) 的新提案。 据介绍,此项提案会为 Go 添加新的testing.F类型,在_test.go文件中支持FuzzFoo函数,并增加新的go命令行为。该提案的 Draft Design 已发布,并根据 Go 社区的反馈进行了迭代。下一步要做的工作是将提案实现为语言特性。 此项特性在 Go 1.17 中会被视为实验性功能,且其 API 也不一定会与 Go 1 兼容。当然,这项功能本身也会存在错误并缺少某些功能,但即便如此也会将其作为概...

6
3
发表于行业趋势专区
02/19 08:50

Go 语言现状

JetBrains 官方博客发表了一篇题为"The state of Go"的文章,他们通过深入研究有关 Go 的信息,发现了不少鲜为人知的事实,并提供了翔实的数据作为支撑。此外,JetBrains 还邀请到了知名的 Go 语言专家 Florin Pățan 针对各项数据发表了自己的见解。 一、Go 开发者 数量 & 所处地区 全球大约有 110 万名职业 Go 开发者(特指在工作中专门将 Go 作为主力编程语言的群体),如果把主要使用其他编程语言但同时兼职使用 Go 的专业...

50
61
02/17 07:15

Go 1.16 发布,支持 macOS ARM64

Go 1.16 正式发布,该版本主要包括支持 macOS ARM64、工具链优化、运行时和库的实现优化。并且,该版本保留了Go 1兼容性的承诺,几乎所有 Go 程序都能像以前一样继续编译和运行。 部分更新内容 Go 1.16 通过 GOOS=darwin,GOARCH=arm64 在macOS(也称为 Apple Silicon)上添加了对 64 位 ARM 架构的支持。与 darwin/amd64 一样,darwin/arm64 也支持 cgo、内部和外部链接、c-archive、c-shared 和 pie build 模式、竞争检测器 ...

29
6
发表于行业趋势专区
02/05 08:25

Go 泛型提案有望被接受,已进入"Likely Accept"状态

Go 团队 leader 兼核心开发者 Russ Cox 昨日已将 Go 泛型提案从 Active 移动至 Likely Accept。进入此状态意味着提案审核小组已就接受提案达成了初步共识,下一步将基于此继续讨论以确定是否接受提案。 Go 泛型提案于上个月提交,开发者对此特性进行了大量讨论。Russ Cox 表示,社区总体达成共识的草案包括使用带方括号的类型参数列表,不过也有一些细节待解决,例如关于接口内的类型列表作为约束的问题。Russ Cox 还提到,Rob...

36
3
发表于开发技能专区
01/22 07:10

Go 1.15.7 和 Go 1.14.14 发布

Go 团队发布了两个小版本——Go 1.15.7 和 Go 1.14.14。虽然只是小版本的更新,但 Go 团队还是建议用户进行升级,因为这两个版本修复了社区最近反馈的安全问题。 cmd/go:通过 cgo 命令调用的软件包可能会在构建时出现任意代码执行漏洞 受影响的群体包括 Windows 和 Unix 用户 crypto/elliptic:P224() 椭圆曲线加密实现可能会生成错误的输出,包括从 ScalarMult 返回无效点 详情查看发布公告。 下载地址:https://golang.org/...

8
2
发表于行业趋势专区
01/13 17:23

Go 泛型提案已提交,Go 1.18 beta 有望试用

Go 团队核心成员 Ian Lance Taylor 宣布已提交为 Go 添加泛型的提案 (Proposal)。 Ian 在博客说道:“为 Go 添加泛型的语言变更完全向后兼容 (fully backward compatible),现有的 Go 程序会继续像现在一样正常运行。” Ian 还表示如果提案能通过,Go 团队会在年底前发布一个完整但可能未优化的实现,以供开发者试用,或许会在 Go 1.18 beta 中提供。 泛型草案设计概要 函数可以使用带方括号的类型参数列表,类型参数列表的其他...

86
5
发表于行业趋势专区
2020/12/24 08:58

Go on ARM 以及移植计划

Go 团队核心开发者 Russ Cox 表示自己看到最近业界对非 x86 架构处理器的讨论沸沸扬扬,所以值得发表一篇关于 Go 对非 x86 架构处理器的支持的文章。 Russ 表示,他们十分看重 Go 的可移植性,因此一直在避免让 Go 过度适应任何特定的操作系统或架构。Go 最早的开源版本包括对两种操作系统(Linux 和 Mac OS X)和三种架构(64 位 x86、32 位 x86 和 32 位 ARM)的支持。 发展到现在,Go 增加了对更多操作系统和架构组合的支持:...

26
4
发表于开发技能专区
2020/12/21 09:40

Go 1.16 首个 Beta 版本发布

Go 1.16 发布了首个 Beta 测试版,正式版计划于明年2月发布。 以下内容摘录自 Go 1.16 release notes: 支持 64 位 ARM 架构的 macOS (Apple Silicon) 支持 64 位 ARM 架构的 NetBSD 支持 MIPS64 架构的 OpenBSD 针对 RISC-V 的性能优化和代码生成改进 改进 Module 功能,默认启用 Module-aware 模式 …… 升级命令 $ go get golang.org/dl/go1.16beta1 $ go1.16beta1 download 下载源码或二进制文件:https://golang.org/dl...

109
4
发表于行业趋势专区
2020/11/11 08:16

Go 开源 11 周年

2009年11月10日,Go 作为开源项目正式宣布推出。到今天,Go 已开源 11 周年,其官方博客也更新了一篇纪念 11 周年的文章。 简单回顾 Go 的历史: 2007年9月 Rob Pike, Robert Griesemer 和 Ken Thompson 开始设计 Go 2008年3月 Go 的首个规范产生 2009年11月10日,Go 正式宣布推出,并成为开源项目 2012年3月,首个正式版本 Go 1 发布 2013年5月,Go 1.1 发布,并正式确定发布周期,计划每半年发布一个二级版本 …… 直到今天,...

65
10
发表了资讯
2020/09/10 14:12

Go 1.15.2 和 1.14.9 发布了

Go 语言刚刚发布了两个小版本升级,分别是 1.15.2 和 1.14.9。 go1.15.2 (2020/09/09) 主要是修复编译器、运行时、文档相关的 bug。 详细的改进内容请看发行说明: https://golang.org/doc/devel/release.html#go1.15.minor 下载地址: https://golang.org/dl/ 编译方法: "git checkout go1.15.2" and build as usual....

3
0
发表了资讯
2020/08/12 08:00

Go 1.15 发布

Go 1.15 发布了,该版本在 1.14 的基础上继续改进工具链、运行时和库,同时该版本继续保持对 Go 1 版本的兼容承诺。 Go 1.15 包含了对链接器的实际提升,提升了在高内核系统下的小对象内存分配,废弃了 X.509 CommonName. GOPROXY 限制已经支持在返回错误时跳过代理的做法,同时增加了一个全新的 嵌入式 tzdata 包。 Go 1.15 在语言方面没有任何的改动。 Go 1.15 对 Mac 系统的要求至少是 macOS 10.12 Sierra 或者更新版本。 完...

41
3
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页
暂无内容
10/12 15:13

云南软件公司使用GO开发项目。。。。

我们团队在一个四线城市,目前团队有4-5个GO技术员(都是自己培训从PHP转到GO),现在扩展一下团队人员,我们开源的Gfast项目也由于忙公司的项目,目前快1个月没有更新了,在BOSS上发布半年了都没有收到一份GO的简历,是不是咱们云南搞GO的人太少了。。

20
1
发表于程序人生专区
09/21 10:28

谁熟悉operator-sdk,"operator-sdk create api"这一步总是报错

谁熟悉operator-sdk,"operator-sdk create api"这一步总是报错

1
0
发表于开发技能专区
09/19 21:41

如果使用go做游戏服务端开发,tcp通信(长连接)这种,适合吗

如果使用go做游戏服务端开发,tcp通信(长连接)这种,适合吗 go有没有成熟的tcp/udp第三方包

1
0
08/09 12:09

开源项目做插件化怎么样?

搞一个开源项目(Gfast 后台管理https://gitee.com/tiger1103/gfast)采用Goframe框架写的。。1.0版本开源一年来基本上都是在做义务劳动,2.0版本想走插件化模式盈利,各位大神给点建议!

3
0
发表于程序人生专区
06/04 09:33

回老家二线城市工作一段时间有感

从广东返回二线老家工作已经有一段时间了,忽然想对这一段时间做个总结,也算是为后来回到老家发展的同学给点借鉴吧。 1、回去第一做好准备就是工资的腰斩,但如果能进入本地的头部企业,薪资也不会差太多。 2、技术的使用上,要准备好你之前的所学所用丧失优势的准备,回去之前你就可以看下相关的岗位,对技术的要求,二线城市,很多能活下来的企业一定是依靠那些老项目支撑,所以,ssh, ssm 架构,以及JSP、layui,easyui ,甚...

27
1
06/09 17:49

用户拿开源项目去做违法的事情?作者有那些责任?

大家好,我们做开源项目(Gfast)https://gitee.com/tiger1103/gfast,最近有同行提醒开源项目有法律风险,请问用户使用开源软件违法犯罪,作者有负那些方面的法律责任?

1
0
05/26 10:05

如何来做开源项目?

Gfast开源快一年了,一年中在GO领域接触到不少东西,目前来看使用Gfast的人给的评价比较高,使用人员也越来越多了,Goframe已经升级,Gfast2.0版本也已经在开发中,由于项目一直免费使用, 技术支持的人力成本比较大,目前犹豫要不要开源?如何开源?请给宝贵意见!谢谢!

7
0
发表了问答
2013/12/19 22:24

golang VS php 性能对比

原文 http://www.isno.cn/2013/12/golang-vs-php/ 在工作的项目中,我的主要开发语言是php,因需求或者为弥补php的缺陷,需要为php做各种各样的扩展,比如php本身不支持线程,没有队列,进程也不无法用于生产环境, 可以说php没有任何“程”,因而网上有较多的文章阐述如何实现php队列,多线程等等,在我的理解,与其用php本身实现这种无法保证健壮的特性,不如去发掘运用一些本身集成,且表现优异的语言 微博中了解到了golang语...

55
14
发表了问答
2013/08/11 02:51

问下有人见过合并MP4的C语言或者Go语言的源代码吗?

问一下有人见过go语言的关于MP4文件合并的源代码么,或者支持MP4拆分、合并的库更好 因为go中嵌入c很容易,所以c语言的源代码也可以

3
0
2020/08/20 07:06

GO语言中的协程与Python中的协程的区别?

2020-08-20:GO语言中的协程与Python中的协程的区别?

2
0
发表了问答
2020/08/03 23:01

go如何用变量设定数组长度

go如何用变量设定数组长度

7
0
发表了问答
2020/07/23 12:04

go字符串转换为数字报错:\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00

我尝试对从文件中读取出的字符串进行类型转换,但是遇到了一个难以解决的问题: 对于标记红框的部分,表面上看起来这两个数字很正常,但是实际上对于第一个数字18408000517,如果我使用 strconv.Atoi(value) 就会爆出错误: strconv.Atoi: parsing "\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\...

1
0
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页
60 评论
468 收藏
分享
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部