1. 部署簡單

創(chuàng)新互聯專注于奇臺企業(yè)網站建設,成都響應式網站建設,商城開發(fā)。奇臺網站建設公司,為奇臺等地區(qū)提供建站服務。全流程定制開發(fā),專業(yè)設計,全程項目跟蹤,創(chuàng)新互聯專業(yè)和態(tài)度為您提供的服務
Go
編譯生成的是一個靜態(tài)可執(zhí)行文件,除了glibc外沒有其他外部依賴。這讓部署變得異常方便:目標機器上只需要一個基礎的系統和必要的管理、監(jiān)控工具,完全不需要操心應用所需的各種包、庫的依賴關系,大大減輕了維護的負擔。
2. 并發(fā)性好
Goroutine和channel使得編寫高并發(fā)的服務端軟件變得相當容易,很多情況下完全不需要考慮鎖機制以及由此帶來的各種問題。單個Go應用也能有效的利用多個CPU核,并行執(zhí)行的性能好。
3. 良好的語言設計
從學術的角度講Go語言其實非常平庸,不支持許多高級的語言特性;但從工程的角度講,Go的設計是非常優(yōu)秀的:規(guī)范足夠簡單靈活,有其他語言基礎的程序員都能迅速上手。更重要的是
Go 自帶完善的工具鏈,大大提高了團隊協作的一致性。
4. 執(zhí)行性能好
雖然不如 C 和 Java,但相比于其他編程語言,其執(zhí)行性能還是很好的,適合編寫一些瓶頸業(yè)務,內存占用也非常省。
awesome-go :一個很全的go語言框架,庫,軟件合集
前面發(fā)過關于awsone-python, awsone django, flask。最近在學習golang,所以找到awsone-go
由于內容太多,這里只是列出主要的目錄,每一項下面又有很多內容。具體詳細的內容,請到官網查看。
github網址 ,
官網 。
在Go語言的代碼中,您需要引入官方的SDK庫 aliyun/serverless/fc-runtime-go-sdk/fc,并實現handler函數和main函數。 示例如下:
傳入的event參數是一個包含key屬性的JSON字符串,示例如下。
具體的示例解析如下:
有效的Event Handler簽名如下:
其中,InputType和OutputType與encoding/json標準庫兼容。
Event Handler的使用需遵循以下規(guī)則:
事件函數的Handler示例代碼:
本文介紹一些Go語言的基礎語法。
先來看一個簡單的go語言代碼:
go語言的注釋方法:
代碼執(zhí)行結果:
下面來進一步介紹go的基礎語法。
go語言中格式化輸出可以使用 fmt 和 log 這兩個標準庫,
常用方法:
示例代碼:
執(zhí)行結果:
更多格式化方法可以訪問中的fmt包。
log包實現了簡單的日志服務,也提供了一些格式化輸出的方法。
執(zhí)行結果:
下面來介紹一下go的數據類型
下表列出了go語言的數據類型:
int、float、bool、string、數組和struct屬于值類型,這些類型的變量直接指向存在內存中的值;slice、map、chan、pointer等是引用類型,存儲的是一個地址,這個地址存儲最終的值。
常量是在程序編譯時就確定下來的值,程序運行時無法改變。
執(zhí)行結果:
執(zhí)行結果:
Go 語言的運算符主要包括算術運算符、關系運算符、邏輯運算符、位運算符、賦值運算符以及指針相關運算符。
算術運算符:
關系運算符:
邏輯運算符:
位運算符:
賦值運算符:
指針相關運算符:
下面介紹一下go語言中的if語句和switch語句。另外還有一種控制語句叫select語句,通常與通道聯用,這里不做介紹。
if語法格式如下:
if ... else :
else if:
示例代碼:
語法格式:
另外,添加 fallthrough 會強制執(zhí)行后面的 case 語句,不管下一條case語句是否為true。
示例代碼:
執(zhí)行結果:
下面介紹幾種循環(huán)語句:
執(zhí)行結果:
執(zhí)行結果:
也可以通過標記退出循環(huán):
--THE END--
1. os.Getwd()函數
原型:func Getwd()(pwd string, err error)
作用:獲取當前文件路徑
返回:當前文件路徑的字符串和一個err信息
示例:
輸出:
當前路徑: D:ProjectsGomGoLab01
2. os.Getenv()函數
原型:func Getenv(key string) string
作用:獲取系統環(huán)境變量的值
參數:key - 系統環(huán)境變量名
返回:系統環(huán)境變量的值
示例:
輸出:
環(huán)境變量GOPATH的值是: D:/Projects/Go
3. os.Chdir()函數
原型:func Chdir(dir string) error
作用:將當前文件路徑改變?yōu)槟繕寺窂剑ǚ钦鎸嵏淖儯?/p>
參數:dir - 目標路徑(即改變之后的路徑)
返回:修改成功,返回 nil;修改失敗(如:目標路徑不存在的情況),返回錯誤信息。
示例一:
輸出:
起始路徑: D:ProjectsGomGoLab01
修改后的路徑: D:ProjectsGoDemo02
示例二:
輸出:
起始路徑: D:ProjectsGomGoLab01
error: chdir D:ProjectsGoDemo03: The system cannot find the file specified.
注:文件路徑,Window 系統下默認是“”,寫在代碼中時要用“”或“/”代替。
1、學習曲線
它包含了類C語法、GC內置和工程工具。這一點非常重要,因為Go語言容易學習,所以一個普通的大學生花一個星期就能寫出來可以上手的、高性能的應用。在國內大家都追求快,這也是為什么國內Go流行的原因之一。
2、效率
Go擁有接近C的運行效率和接近PHP的開發(fā)效率,這就很有利的支撐了上面大家追求快速的需求。
3、出身名門、血統純正
之所以說Go語言出身名門,是因為我們知道Go語言出自Google公司,這個公司在業(yè)界的知名度和實力自然不用多說。Google公司聚集了一批牛人,在各種編程語言稱雄爭霸的局面下推出新的編程語言,自然有它的戰(zhàn)略考慮。而且從Go語言的發(fā)展態(tài)勢來看,Google對它這個新的寵兒還是很看重的,Go自然有一個良好的發(fā)展前途。我們看看Go語言的主要創(chuàng)造者,血統純正這點就可見端倪了。
4、組合的思想、無侵入式的接口
Go語言可以說是開發(fā)效率和運行效率二者的完美融合,天生的并發(fā)編程支持。Go語言支持當前所有的編程范式,包括過程式編程、面向對象編程以及函數式編程。
5、強大的標準庫
這包括互聯網應用、系統編程和網絡編程。Go里面的標準庫基本上已經是非常穩(wěn)定,特別是我這里提到的三個,網絡層、系統層的庫非常實用。
6、部署方便
我相信這一點是很多人選擇Go的最大理由,因為部署太方便,所以現在也有很多人用Go開發(fā)運維程序。
7、簡單的并發(fā)
它包含降低心智的并發(fā)和簡易的數據同步,我覺得這是Go最大的特色。之所以寫正確的并發(fā)、容錯和可擴展的程序如此之難,是因為我們用了錯誤的工具和錯誤的抽象,Go可以說這一塊做的相當簡單。
8、穩(wěn)定性
Go擁有強大的編譯檢查、嚴格的編碼規(guī)范和完整的軟件生命周期工具,具有很強的穩(wěn)定性,穩(wěn)定壓倒一切。那么為什么Go相比于其他程序會更穩(wěn)定呢?這是因為Go提供了軟件生命周期的各個環(huán)節(jié)的工具,如go
tool、gofmt、go test。
當前標題:go語言藍牙庫,Go語言開發(fā)
標題URL:http://chinadenli.net/article17/dseshgj.html
成都網站建設公司_創(chuàng)新互聯,為您提供做網站、網站設計、、用戶體驗、網站策劃、動態(tài)網站
聲明:本網站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯