Go I/O 2010 FAQ
Last updated: Nov 30, 2022
Go I/O 2010 FAQ
原文信息
- 地址:Go at I/O: Frequently Asked Questions
- 作者:Andrew Gerrand
- 时间:2010年5月27号
中文译文
上周,在备受瞩目的谷歌I/O大会上,我们小团队所在的演讲室座无虚席,也遇见了许多现在和未来的Go程序员。非常多的人在了解了Go之后,对使用Go所能获得的潜在好处( 即时的和长期的)感到兴奋,这十分令人欣慰。
在I/O大会期间,我们被问了很多有意义的问题,在这篇文章中,我想对其中的一些问题进行总结和扩展。
Go在生产系统中的适用性如何?Go现在(对于生产系统)已经准备充足,而且已经稳定了。我们很荣幸地(向大家)报告,谷歌正在一些生产系统中使用Go,它们的性能很好。当然(Go)还有改进的空间——这就是为什么我们继续在语言、库、工具链和运行时上努力的原因。
你们有实现泛型的计划吗?许多关于泛型特性的建议在公开和内部场合都被讨论过,但到目前为止,我们还没有找到一个与该语言的其他部分一致的提案。我们认为Go的重要优点之一就是它的简单,所以对于引入可能使这门语言更难理解的新功能,我们保持警惕态度。此外,我们编写的Go代码越多( 越能写出好的Go代码)的话,我们(其实)就越不需要这样的语言特性。
你们有支持GPU编程的计划吗?我们目前还没有任何这样做的计划,但由于Go与架构无关,所以这是很有可能的。能够启动运行在不同处理器架构上的goroutine,并使用channel在运行在不同架构上的goroutine之间进行通信,似乎都是不错的想法。
是否计划在App引擎上支持Go?Go和App引擎团队都希望看到这种情况发生。一如既往地,这(其实)是一个资源和优先事项的问题,是决定这是否会或者何时会实现的根本因素。
有在Android上支持Go的计划吗?两个Go编译器都支持ARM代码生成,所以这是可能的。虽然我们认为Go对于编写移动应用程序将是一种很好的语言,但Android支持并不是我们积极努力的方向。
我能用Go做什么?Go在设计时就考虑到了系统编程。服务器、客户端、数据库、缓存、均衡器、分发器——Go对于它们都是明显有用的,这也是我们在谷歌已经开始使用它的方式。然而,自从Go开源发布以来,社区已经出现了各种各样的应用程序。从网页应用到游戏再到图形工具,Go有望成为一种通用编程语言。它的潜力目前只是被库的支持所限制了,而库支持正在以惊人的速度提高。此外,教育工作者对使用Go教授编程表达了兴趣,称其简洁的语法和一致性非常适合这项任务。
感谢每一位参加我们的演讲或在办公时间与我们交谈的人。我们希望在今后的活动中再次见到您。
Rob 和 Russ 的演讲视频跳转YouTube可以看到。
下一篇文章:New Talk and Tutorials
上一篇文章:Third-party libraries: goprotobuf and beyond
博客地址