Go 2.0 新特性展望:詳細
go2.0 會有什么新特性呢?下圖是一個老外的調侃,他不希望發生這樣的事情(please don't make it happen)。我倒是希望其中一些實現,比如泛型和操作符重載和多態。
Go 1.9 新特性:詳細
1,類型別名,type alias
2,新的math/bits
3,新的map類型,Concurrent Map
4,testing Helper
5,monotonic time流失時間計時
6,並行編譯,更快的編譯速度
Go 1.8 新特性 :詳細
Go 1.8 一個很大的特性就是性能的提升,包括二進制文件的大小、編譯速度和運行速度。並且非常大的提升就是提供小於100us GC暫停。net/http提供了更多的超時設置,比如ReadHeaderTimeout、IdleTimeout。
1,Http server connection draining(連接耗盡)
2,通過 http.Pusher 實現 HTTP/2.0 server push
3,database/sql 增強
4,實現動態插件
5,新的slice排序api,sort.Slice
Go 1.7 新特性:詳細
GO 1.7版本發布,主要改進編譯器和鏈接器。Go 1.7 的變化主要在工具鏈、運行時和庫的實現上。語言規范只有一處很小的變化。
1,編譯工具鏈方面,引入 SSA 應該是新版本最大的特性之一。
2,包中的元數據格式從之前的文本格式修改為更緊湊的二進制格式。生成的包會更小。
3,更快的編譯速度和執行速度
Go 1.6 新特性:詳細
Go 1.6 發布了,該版本在語言本身層面並沒有任何變化,主要改進包括:
1,默認使用 cgo 外部 C 編譯器
2,支持 HTTP/2 協議
3,增加對 64 位 MIPS 的體驗支持 (Linux)
4,增加對 32 位 x86 上的 Android 的體驗支持
5,在 FreeBSD 上 go 1.6 默認使用 clang 而不是 gcc 作為外部 C 編譯器
Go 1.5 新特性:詳細
go1.5是go語言的第六個重要版本。該版本在本次更新中移除了“最后殘余的C代碼”,Runtime(運行時)、Compiler(編譯器)和Linker(連接器)均是由Go語go編寫。目前,Go 1.5現已開放下載並支持Windows、Mac OS X和Linux平台。
主要特性如下:
1,編譯器和運行時已完全使用Go編寫,徹底移除C語言;
2,垃圾收集器現可並行運行,顯著降低了收集器的停頓時間;
3,Go程序默認以最大可用內核數量運行(GOMAXPROCS set),之前版本中默認為1;
4,所有資源庫(repositories)現已支持內部包,而不僅僅是Go的核心部分;
5,go命令現提供對“vendoring”外部依賴的“實驗性支持”;
6,新加入的go指令追蹤工具可對程序執行細粒度良好的追蹤;
7,新加入的go doc指令(與godoc有區別)可在命令行中專門使用。
8,改進 linker,允許分布式 Go 包作為分享庫鏈接到 Go 程序,可以構建 Go 包到歸檔或者分享庫,可以鏈接或者通過 C 程序加載。