新聞中心
「測試開發(fā)全棧化-Go」(1) Go語言基本了解
作為一個測試,作為一個測試開發(fā), 全?;?管理 是我們未來的發(fā)展方向。已經(jīng)掌握了Java、Python、HTML的你,是不是也想了解下最近異?;鸨腉o語言呢?來吧,讓我們一起了解下。
公司主營業(yè)務:成都網(wǎng)站設計、成都網(wǎng)站制作、移動網(wǎng)站開發(fā)等業(yè)務。幫助企業(yè)客戶真正實現(xiàn)互聯(lián)網(wǎng)宣傳,提高企業(yè)的競爭能力。成都創(chuàng)新互聯(lián)公司是一支青春激揚、勤奮敬業(yè)、活力青春激揚、勤奮敬業(yè)、活力澎湃、和諧高效的團隊。公司秉承以“開放、自由、嚴謹、自律”為核心的企業(yè)文化,感謝他們對我們的高要求,感謝他們從不同領域給我們帶來的挑戰(zhàn),讓我們激情的團隊有機會用頭腦與智慧不斷的給客戶帶來驚喜。成都創(chuàng)新互聯(lián)公司推出洛扎免費做網(wǎng)站回饋大家。
Go 是一個開源的編程語言 ,它能讓構造簡單、可靠且高效的軟件變得容易。
Go是從2007年末由Robert Griesemer, Rob Pike, Ken Thompson主持開發(fā),后來還加入了Ian Lance Taylor, Russ Cox等人,并最終于2009年11月開源,在2012年早些時候發(fā)布了Go 1穩(wěn)定版本?,F(xiàn)在Go的開發(fā)已經(jīng)是完全開放的,并且擁有一個活躍的社區(qū)。這三個人都是計算機界的大神,有的參與了C語言的編寫,有的還是數(shù)學大神,有的還獲得了計算機最高榮譽-圖靈獎。
接下來說說 Go語言的特色 :
簡潔、快速、安全
并行、有趣、開源
內(nèi)存管理、數(shù)組安全、編譯迅速
Go語言的用途 :
Go 語言被設計成一門應用于搭載 Web 服務器,存儲集群或類似用途的巨型中央服務器的系統(tǒng)編程語言。
對于高性能分布式系統(tǒng)領域而言,Go 語言無疑比大多數(shù)其它語言有著更高的開發(fā)效率。它提供了海量并行的支持,這對于 游戲 服務端的開發(fā)而言是再好不過了。
Go語言的環(huán)境安裝:
建議直接打開 官方地址因為墻的原因打不開
因為我用的是windows系統(tǒng),這里主要講下Windows系統(tǒng)上使用Go語言來編程。
Windows 下可以使用 .msi 后綴(在下載列表中可以找到該文件,如go1.17.2.windows-amd64.msi)的安裝包來安裝。
默認情況下 .msi 文件會安裝在 c:Go 目錄下。你可以將 c:Gobin 目錄添加到 Path 環(huán)境變量中。添加后你需要重啟命令窗口才能生效。個人建議還是安裝到 Program Files文件夾中。
使用什么開發(fā)工具來對Go語言進行編寫:
個人建議用VS code, 也可以用Sublime Text來編輯。如果你之前看了我講的HTML語言的學習,肯定已經(jīng)下載了VS code. 那么這時你需要在VS code中下載Go語言的擴展插件。
這里有一個巨大的坑,就是在下載Go的插件和依賴包時,會提示一些包沒有。主要是因為下載的依賴包部分被墻了,只能想別的辦法去下載。
建議參考網(wǎng)頁:
解決vscode中golang插件安裝失敗方法
在學習go的過程中,使用的是vscode,但是一直提示安裝相關插件失敗,然后上網(wǎng)查方法,基本上是叫你建立golang.org目錄什么的,結果全是錯的,而且都是抄襲,很煩。無意之中看到一位博主分享的方法,他也是飽受上述的垃圾博文困擾,然后找到了解決方法,這里向他致敬,秉著讓更多人看到正確解決方法的心,我寫下正確的解決方法,希望對你有所幫助,也可以點開原博主鏈接參考:
Go有一個全球模塊代理,設置代理再去安裝golang的插件,就可以安裝成功了。步驟有,首先Windows用戶打開Powershell,一個藍色的界面,注意不是cmd!不知道的直接打開window下面的搜索,然后輸入powershell,搜索出來就可以了。
$env:GO111MODULE=“on”
$env:GOPROXY=“”
go env -w GOPROXY=
go env -w GOPRIVATE=*.corp.example.com
然后我們打開VsCode界面,下面會提示安裝插件,我們選擇Install ALL,就會安裝成功
當你在運行Go語言程序時,提示所有的插件包都已經(jīng)安裝成功了時,就可以正常使用了,要不然一堆報錯會讓你非常心煩。
好了,今天先到這里,晚安、下班~
配置VSCode遠程開發(fā)環(huán)境
參考:
有幾個步驟要做。
因為我安裝了git,但是命令行調(diào)不出ssh,便選擇將ssh路徑加入vscode設置中。
打開settings.json,F(xiàn)1鍵入 preferences open settings, 加入該行
"remote.SSH.path": "D:\Program Files\Git\usr\bin"
"remote.SSH.path": "D:\Program Files\Git\usr\bin \ssh.exe "
至此成功連接上遠程服務器,接下來慢慢研究怎么配置golang環(huán)境。
vscode的遠程功能是可以做到把本地不需要搭建環(huán)境的。
PS: extension上,UI這種存儲在本地,其他工程相關的在遠程服務器上。
開始配置golang環(huán)境:
window.zoomLevel 可以修改整體的縮放
問題是,訂閱文件有很多個服務器,怎么選呢?
clash有個網(wǎng)頁控制端, ,會映射到localhost:9090
那么只要把服務器的9090端口打開,是不是可以遠程修改服務器上的代理設置呢
原來clash監(jiān)聽的9090端口,是提供了restful API,前往
這里默認調(diào)用localhost的clash API,可以在設置里把IP修改為目標服務器ip
然后就可以愉快的遠程修改遠程服務器代理配置。
(PS: 因為是騰訊云,記得在規(guī)則里添加9090。
(PS: sudo ufw -status - inactive,并不需要修改服務器上的配置,隱約記得centos默認是有ufw的
然后需要把ubuntu的proxy設置改成走clash,因為工作環(huán)境是terminal,所以export http_proxy=localhost:7890即可,可以把export加入到zsh.rc里。
問題是socks5怎么解決,以前用過一款叫proxychains的。
初步結束
go語言新建項目
一直直接操作的框架 使用vscode 打開就會自動裝包,這次想寫一個簡單應用,確不會怎么建項目,記錄如下。
go1.14 后,以及不再需要把項目寫在GOPATH下,所有不需要再配置。
配置GOPRXY goenv-w GOPROXY=(國內(nèi)無法訪問)
使用go mod方法新建項目。
任意位置新建文件夾。
文件夾下執(zhí)行go mod xxx ,生成一個go.mod文件。
新建一個main.go文件,就可以直接運行了。
我開始的時候,先建了main.go文件,再執(zhí)行的go.mod。后面沒法運行。
參考:李文周的博客。
vscode如何快速切換go版本
vscode快速切換go版本:
1、在vscode下添加launch.json。
2、終端編碼切換gobuild即可。VSCode(全稱:VisualStudioCode)是一款由微軟開發(fā)且跨平臺的免費源代碼編輯器,該軟件支持語法高亮、代碼自動補全(又稱IntelliSense)、代碼重構、查看定義功能。
delve基礎用法及在vscode中的使用
delve 是go語言的調(diào)試器,delve的目標是為go提供一個簡潔、功能齊全的debug工具,delve易于調(diào)用和使用。
為了能夠編譯delve,需要安裝Go 1.10或更高版本
安裝好go后,直接go get即可安裝,更多安裝教程見:
go get github.com/go-delve/delve/cmd/dlv
安裝好后,在終端執(zhí)行dlv或者dlv help 會看到dlv的幫助信息,則說明安裝成功
dlv常用命令
delve的目標是成為一個簡潔而強大的工具。但如果你不習慣在編譯語言中使用源碼調(diào)試,則可能令人困惑。本文檔將提供開始調(diào)試go程序所需的全部信息。
調(diào)試例子程序如下
├── go.mod
├── go.sum
├── main.go
├── test
└── utils
├── util.go
└── util_test.go
調(diào)試程序主要有三個文件,main.go、util.go、util_test.go,內(nèi)容如下,比較簡單,go包管理工具使用的是go module,模塊名為test
在vscode debug 的設置中配置launch.json文件
mode 設置為debug時,program的內(nèi)容${fileDirname}即可,mode 設置為exec時,program的值為二進制文件的路徑,通過設置mode的值,即可調(diào)試源碼和二進制程序(也需要有源碼)。mode模式為auto時,測試了下,vscode 并不能通過program的內(nèi)容來判斷是debug還是exec
遠程調(diào)試時,需要在遠程也有源碼、二進制包和dlv工具
在遠端執(zhí)行dlv命令
dlv debug --headless --listen=:8989 --api-version=2 --accept-multiclient #用degbug方式啟動遠程應用程序
dlv exec --headless --listen=:8989 ./test --api-version=2 --accept-multiclient # exec執(zhí)行當前目錄下的test二進制文件
--listen:指定調(diào)試端口
--api-version:指定api版本,默認是1
--accept-multiclient:接受多個client調(diào)試
在vscode中線下好源碼,和遠端的源碼結構一致。launch.json配置如下:
在vscode中打好斷點后,就可以進行遠程調(diào)試了
文章標題:go語言vscode離線 vscode配置golang
當前路徑:http://fisionsoft.com.cn/article/dodeeep.html