Go语言是谷歌推出的一种全新的编程语言,能够在不损失应用程序性能的状况降低低代码的复杂性。谷歌首席软件工程师罗布派克(Rob Pike)说:咱们之因此开发Go,是由于过去10多年间软件开发的难度使人沮丧。前端
Go是谷歌2009发布的第二款编程语言。2009年7月份,谷歌曾发布了Simple语言,它是用来开发Android应用的一种BASIC语言. 北京时间2010年1月10日,Go语言摘得了TIOBE公布的2009年年度大奖。该奖项授予在2009年市场份额增加最多的编程语言。
谷歌资深软件工程师罗布·派克(Rob Pike)表示,“Go让我体验到了从未有过的开发效率。”派克表示,和今天的C++或C同样,Go是一种系统语言。他解释道,“使用它能够进行快速开发,同时它仍是一个真正的编译语言,咱们之因此如今将其开源,缘由是咱们认为它已经很是有用和强大。”编程
2007年,谷歌把Go做为一个20%项目开始研发,即让员工抽出本职工做以外时间的20%, 投入在该项目上。除了派克外,该项目的成员还有其余谷歌工程师也参与研发。 派克表示,编译后Go代码的运行速度与C语言很是接近,并且编译速度很是快,就像在使用一个交互式语言。现有编程语言均未专门对多核处理器进行优化。Go就是谷歌工程师为这类程序编写的一种语言。它不是针对编程初学者设计的,但学习使用它也不是很是困难。Go支持面向对象,并且具备真正的闭包(closures)和反射 (reflection)等功能。 在学习曲线方面,派克认为Go与Java相似,对于Java开发者来讲,应该可以轻松学会 Go。之因此将Go做为一个开源项目发布,目的是让开源社区有机会建立更好的工具来使用该语言,例如 Eclipse IDE中的插件。 在谷歌公开发布的全部网络应用中,均没有使用Go,可是谷歌已经使用该语言开发了几个内部项目。派克表示,Go是否会对谷歌即将推出的Chrome OS产生影响,还言之尚早,不过Go的确能够和Native Client配合使用。他表示“Go可让应用完美的运行在浏览器内。”例如,使用Go能够更高效的实现Wave,不管是在前端仍是后台。 Go 同时具备两种编译器,一种是创建在GCC基础上的Gccgo,另一种是分别针对64位x64和32位x86计算机的一套编译器(6g和8g)。谷歌目前正在研发其对ARM芯片和Android设备的支持。派克表示,“Android手机存在的问题是,咱们一直没有一个数学协处理器。”
问题:浏览器