go語言的快速入門之葵花寶典

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,管道:

共分為有緩衝和無緩衝兩類


推薦閱讀:

TAG:葵花寶典 | Go編程 | Go語言 |