java nginx linux 微软 开源 google 云计算 mysql 编程 php shell Windows wordpress Firefox apache Ubuntu 程序员 Android centos Python

谷歌推全新開源編程語言Go 優化多處理器編程

本周二谷歌宣布推出一款名為Go的全新開源編程語言,可以優化規模復雜和多處理器系統的應用程序編程.
Go是谷歌今年發布的第二款編程語言.今年7月份,谷歌曾發布了Simple語言,它是用來開發Android應用的一種BASIC語言.谷歌資深軟件工 程師羅布派克(Rob Pike)表示,Go讓我體驗到了從未有過的開發效率.派克表示,和今天的C++或C一樣,Go是一種系統語言.他解釋道,使用它可以進行快速開 發,同時它還是一個真正的編譯語言,我們之所以現在將其開源,原因是我們認為它已經非常有用和強大.

Gordon, the Go gopher mascot, drawn
by Rob Pike's wife and illustrator Renee
French.
(Credit: Google)
2007年,谷歌把Go作為一個20%項目開始研發,即讓員工抽出本職工作之外時間的20%,投入在該項目上.除了派克外,該項目的成員還其它一些谷歌工程師.
派克表示,編譯後Go代碼的運行速度與C語言非常接近,而且編譯速度非常快,就像在使用一個交互式語言.
現有編程語言均未專門對多核處理器進行優化.派克表示,Go就是谷歌工程師為這類程序編寫的一種語言.它不是針對編程初學者設計的,但學習使用它也不是非常困難.Go支持面向對象,而且具有真正的封裝(closures)和反射(reflection)等功能.
在學習曲線方面,派克認為Go與JAVA類似,對於Java開發者來說,應該能夠輕松學會Go.
之所以將Go作為一個開源項目發布,目的是讓開源社區有機會創建更好的工具來使用該語言,例如Eclipse IDE中的插件.目前還沒有支持Go的IDE.
在目前谷歌公開發布的所有網絡應用中,均沒有使用Go.但是谷歌已經使用該語言開發了幾個內部項目.
派克表示,Go是否會對谷歌即將推出的Chrome OS產生影響,現在還言之尚早,不過Go的確可以和Native Client配合使用.他表示,Go可以讓應用完美的運行在瀏覽器內.例如,使用Go可以更高效的實現Wave,無論是在前端還是後臺.
Go 同時具有兩種編譯器,一種是建立在gcc基礎上的Gccgo,另外一種是分別針對64位x86和32位x86計算機的一套編譯器(6g和8g).谷歌目前正在研發其對ARM芯片和Android設備的支持.派克表示,Android手機存在的問題是,我們一直沒有一個數字協處理器.

延伸阅读

    评论