這是一個建立於 的文章,其中的資訊可能已經有所發展或是發生改變。
GO語言是google的自行設計的一門語言
Go語言專門針對多處理器系統應用程式的編程進行了最佳化,使用Go編譯的程式可以媲美C或C++代碼的速度,而且更加安全、支援並行進程。
誕生於著名的google 20%時間,主設計師是Rob Pike
簡單地說,GO語言像java一樣易於開發,像C/C++一樣高效(當然,這是他們的目標)
GO語言的首頁:http://golang.org/
GO語言的編輯器:很多,我這裡使用的IDEA,不過當然需要添加外掛程式,添加的方法可以看這裡:http://www.php100.com/html/itnews/it/2012/0831/10973.html
如果你在IDE中不能下載外掛程式的話,可以去這裡下載http://plugins.jetbrains.com/plugin/5047?pr=idea_ce,然後在硬碟上安裝。
GO的文法
GO的關鍵字和C幾乎完全一直,所以懂C的人不用任何學習,就可以看懂GO的代碼。
但是而這之間的表述模式有著巨大的區別
C中定義一個變數是這樣的
int a;int>0;
同樣在GO語言中,代碼是這樣的,後面加不加分號都可以
var a int = 1var b intb = 0
函數的定義是這樣
func add(a int , b int) int { return a + b}
func 關鍵 參數 傳回值
可以看出C和GO的最大不同就是GO把類型的聲明放在了最後。
所以你可以定義一個匿名的函數
sum = func(a int , b int) int { return a + b }(1, 3)
不知道GO會不會支援lambda運算式,否則這樣寫太複雜了。
Package關鍵字
GO和java一樣有著包的概念,含義和java差不多這裡就不多說了
import關鍵字
GO和java、C#一樣使用的import 而不是include,因為GO已經沒有標頭檔的概念了
最後給大家一個範例檔案
1 /** 2 * Created with IntelliJ IDEA. 3 * User: dothegod 4 * Date: 13-12-7 5 * Time: 上午11:46 6 * To change this template use File | Settings | File Templates. 7 */ 8 package main 9 10>"fmt"11 12 func add(a int , b int) int {13 return a + b14 }15 16 func main() {17 var x , y int18 x = 119 y = 220 21 var sum int22 sum = add(x, y)23 fmt.Printf("%d\n", sum)24 25 sum = func(a int , b int) int {26 return a + b27 }(1, 3)28 29 fmt.Printf("%d\n", sum)30 31 var p *int32 p = &x33 fmt.Printf("%d\n", *p)34 35 36 fmt.Printf("Hello world!")37 }
在IDEA中點擊make就可以編譯這個檔案了,產生的檔案在工程目錄的out目錄下,是個exe檔案,可以直接執行。