1.Go簡介
Go語言擅長做什么?根據谷歌著名的軟件工程師——Go語言的設計人之一——Rob Pike的說法,它是用來開發”大型軟件“的。
Pike說Go語言適合于”很多程序員一起開發的大型軟件,并且開發周期較長,支持云計算的網絡服務:簡言之,就是服務端軟件。Go語言能夠讓程序 員快速開發,并且在軟件不斷的增長過程中,它能讓程序員更容易地進行維護和修改。它融合了傳統編譯型語言的高效性和腳本語言的易用性和富于表達性。“(作 為原貝爾實驗室Unix開發小組成員,Pike對系統軟件有相當的認識。)
go語言是系統級語言,類似c++、java、python,可以在各種平臺上運行,包括嵌入式平臺,可以開發桌面應用(https://github.com/lxn)或者web應用(https://github.com/astaxie/build-web-application-with-golang/blob/master/ebook/preface.md)。其語言的主要特點是:語言層面直接支持并發。
2.Go內置關鍵字
3.Go注釋
// 單行注釋
/**/ 多行注釋
4.Go語言編程基礎
Go程序的一般結構為:basic_structure.go
Go程序是通過package來組織的(與python相似)
只有package名為main
的包可以包含main
函數
一個可執行的程序有且僅有一個main
包
通過import
關鍵字來導入其它非main包
import "a"
import "b"
import "c"
可以換成:
import (
"a"
"b"
"c"
)
如果導入包后,沒有使用過里面的函數或者類型,就會編譯報錯,要刪除沒有使用到的包
通過const
關鍵字來進行常量的定義
通過在函數體外部使用var
關鍵字來進行全局變量的聲明與復制
通過type
關鍵字來進行結構(struct
)或者接口(interface
)的聲明
通過func
關鍵字來進行函數的聲明
1)package別名
import std "fmt"
std.Println("Hello") // io就是別名
也可以省略掉io
Println("Hello") // 但是不介意省略掉std,容易造成混淆
2)可見性規則(就是private和public)
Go語言中,使用大小寫來決定改常量,變量,類型,結構,結構或者函數
是夠可以被外部包所調用:
根據約定,函數名
首字母小寫即為private
那么這樣在包的外部不能使用,在包的內部是可以隨意調用的。
函數名為大寫的話,那么就是public
3)既然導入多個包時候可以進行簡寫,那么聲明多個常量,全局變量或者一般類型(非接口,非結構)是否也可以用同樣的方法呢?
// 常量的定義
const (
PI = 3.14
const1 = "1"
const2 = "2"
const3 = "3"
)
// 全局變量的聲明 (注意:不能在函數體內。變量組只能用在全局變量聲明的時候使用,在函數體內不能)
var (
name = "gopher"
name1 = "1"
name2 = 2
name3 = 3
)
// 一般類型的聲明
type (
newType int
type1 float32
type2 string
type3 byte
)