go語言的快速入門之葵花寶典
來自專欄瘋狂的go語言
go
作為一個正在新興的程序語言,想必很多童鞋都在學習或者使用當中
話不多說,直接上乾貨吧
go,作為靜態語言,強類型語言。所以,對於之前寫java或者python的童鞋會有一點不適應
其實go很簡單,掌握以下6點,就掌握了go,so easy 麽?
1,指針
2,結構體
3,方法
4,介面
5,並發
6,管道
其中1和6童鞋們了解的應該都比較多,其他的可能就了解的比較少
2,結構體:
結構體是一種數據結構,你可以認為是dict或者list 等等,反正記住就是一種數據結構就好
eg:
type Test strcut {
name string
}
3,方法:
方法並不是公開的def 函數,而是屬於數據結構私有的行為
eg:
func (t Test) TestFunc() {
log.Println("name is %s",t)
}
4,介面:
介面這個較為複雜,是多態體現的重要基礎之一,詳情後續補充
eg:
type TestInterfacer Interfacer {
Hello()
}
5,並發:
這個為go語言的特色之一,你不需要像python一樣引入第三方庫來進行處理解決,並且效果甚好,每當調用go的時候,go語言會為其單獨分配一個協程來進行處理,當然,所有的並發,想必讀者們都會考慮讀寫鎖的問題,這裡go語言來會單獨提供了2種方案來進行(原子鎖和互斥鎖),這裡,筆者簡單介紹下互斥鎖,由他來解決同步寫的干擾問題
eg:
//並發
go func Test() {
log.Println("this is golang")
}
eg:
//互斥鎖
import sync
import os
go func Test() {
sync.Lock() //加鎖
os.WriteString("hello world~")
sync.Unlock() //程序結束,解鎖
}
6,管道:
共分為有緩衝和無緩衝兩類
推薦閱讀: