這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。
北京時間11月11日訊息,據國外媒體報道,本周二Google宣布推出一款名為Go的全新開源程式設計語言,可以最佳化規模複雜和多處理器系統的應用程式編程。
Go是Google今年發布的第二款程式設計語言。今年7月份,Google曾發布了Simple語言,它是用來開發Android應用的一種BASIC語言。
Google資深軟體工程師羅布·派克(Rob Pike)表示,“Go讓我體驗到了從未有過的開發效率。”派克表示,和今天的C++或C一樣,Go是一種系統語言。他解釋道,“使用它可以進行快速開發,同時它還是一個真正的編譯語言,我們之所以現在將其開源,原因是我們認為它已經非常有用和強大。”
2007年,Google把Go作為一個20%項目開始研發,即讓員工抽出本職工作之外時間的20%,投入在該項目上。除了派克外,該項目的成員還其它一些Google工程師。
派克表示,編譯後Go代碼的運行速度與C語言非常接近,而且編譯速度非常快,就像在使用一個互動式語言。
現有程式設計語言均未專門對多核處理器進行最佳化。派克表示,Go就是Google工程師為這類程式編寫的一種語言。它不是針對編程初學者設計的,但學習使用它也不是非常困難。Go支援物件導向,而且具有真正的封裝(closures)和反射(reflection)等功能。
在學習曲線方面,派克認為Go與Java類似,對於Java開發人員來說,應該能夠輕鬆學會Go。
之所以將Go作為一個開源項目發布,目的是讓開源社區有機會建立更好的工具來使用該語言,例如Eclipse IDE中的外掛程式。目前還沒有支援Go的IDE。
在目前Google公開發布的所有網路應用中,均沒有使用Go。但是Google已經使用該語言開發了幾個內部項目。
派克表示,Go是否會對Google即將推出的Chrome OS產生影響,現在還言之尚早,不過Go的確可以和Native Client配合使用。他表示,“Go可以讓應用完美的運行在瀏覽器內。”例如,使用Go可以更高效的實現Wave,無論是在前端還是後台。
Go同時具有兩種編譯器,一種是建立在GCC基礎上的Gccgo,另外一種是分別針對64位x86和32位x86電腦的一套編譯器(6g和8g)。Google目前正在研發其對ARM晶片和Android裝置的支援。派克表示,“Android手機存在的問題是,我們一直沒有一個數字副處理器。”
項目地址:http://golang.org/
很指的期待,因為現有程式設計語言均未專門對多核處理器進行最佳化。