您好,登錄后才能下訂單哦!
這篇文章主要介紹“Go語言入門基礎知識有哪些”,在日常操作中,相信很多人在Go語言入門基礎知識有哪些問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”Go語言入門基礎知識有哪些”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!
一、Go語言簡介
1、什么是go語言?
2007年,受夠了C++煎熬的Google首席軟件工程師Rob Pike糾集Robert Griesemer和Ken Thompson兩位牛人,決定創造一種新語言來取代C++, 這就是Golang。出現在21世紀的GO語言,雖然不能如愿對C++取而代之,但是其近C的執行性能和近解析型語言的開發效率以及近乎于完美的編譯速度,已經風靡全球。特別是在云項目中,大部分都使用了Golang來開發,不得不說,Golang早已深入人心。而對于一個沒有歷史負擔的新項目,Golang或許就是個不二的選擇。
被稱為GO語言之父的Rob Pike說,你是否同意GO語言,取決于你是認可少就是多,還是少就是少(Less is more or less is less)。Rob Pike以一種非常樸素的方式,概括了GO語言的整個設計哲學–將簡單、實用體現得淋漓盡致。
很多人將GO語言稱為21世紀的C語言,因為GO不僅擁有C的簡潔和性能,而且還很好的提供了21世紀互聯網環境下服務端開發的各種實用特性,讓開發者在語言級別就可以方便的得到自己想要的東西。
2、golang語言特性
(1) 垃圾回收
內存自動回收,再也不需要開發人員管理內存。開發人員專注業務實現,降低了心智負擔。只需要new分配內存,不需要釋放。
(2)goroute天然并發
從語言層面支持并發,非常簡單。使用一個go則在編譯時會自動開啟一個線程來執行后面的命令/函數/方法,不用像python需要先調用thread模塊來開啟線程goroute,輕量級線程,創建成千上萬個goroute成為可能。基于CSP(Communicating Sequential Process)模型實現。
(3)多返回值
Go的函數可以有多個返回值
“`
func main() {
x,y:=p_fun(10,80)
// x,_ := p_fun(10,80) 多返回值函數時,只要一個返回值
fmt.Println(x,y)
}
//多返回值函數
func p_fun(a int,b int) (int,int) { //函數傳入2個整型參數,返回2個值,都為int類型
sum := a+b
avg := (a+b)/2
return sum,avg
}
(4)go的“包”的概念
a.和python一樣,把相同功能的代碼放到一個目錄,稱之為包。
b.包可以被其他包引用。
c.main包是用來生成可執行文件,每個程序只有一個main包。
d.包的主要用途是提高代碼的可復用性。
e.包的引用
Go在首行使用“package <包名>”來聲明自己所在的包(主程序包為main包,也可以自定義包名),“import”引入其他的包,go自帶的系統包所在的路徑已經在“GOROOT”環境變量中設置好了.
可以使用“import”直接引入,而自己定義的包: package <包名> 在import導入時則需要相對路徑:第三方包默在“GOROOT”和“GOPATH”環境變量所在的路徑下的src目錄下尋找.
(5)go文件編碼規范
使用gofmt <go文件>使go文件內的代碼更規范(縮進等格式更規范),使用gofmt -w <go文件>將原來的go文件修改的更規范。
到此,關于“Go語言入門基礎知識有哪些”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。