怎么学习golang除go语言都需要学什么了Java、Python和JavaScript之外go语言都需要学什么,如果要开始学习一门新语言的话go语言都需要学什么 , 我想应该是Go!
Go语言正在被越来越多的公司使用 。我们公司的后端服务已经全面采用Go语言实现了 。
最开始接触Go语言是去年将一份Go代码“翻译”成Python并集成到测试平台上,说来也挺神奇,我从来没学过Go却完成了这个工作,这也侧面反应了Go的语法还是很平易近人的 。
今年,在海翔飞调岗之后已经没有太多时间写代码了,但如果要开始学习一个新的语言或技术的话,我最想学的是Go!
目前来看,Go似乎还并没有太多测试人员使用的场景,不过,我之前介绍过的BDD行为驱动框架gauge是由Go开发的,当然,它也支持使用Go来编写BDD测试代码 。
对于,已经有一定开发经验的同学,如何快速的开始学习Go语言呢?我这里给一些思路 。
#### 第一步go语言都需要学什么:下载和安装
在配置环境的时候你需要重点了解GOROOT、GOPATH的作用 。
你还要准备一款称手的编辑器,如果你像我一样,一直都在使用VS Code的话,那么就它就可以了 。
#### 第二步:从hello world开始
先运行一个hello world程序,认识Go语言的语法 。
package main
import ("fmt")
func main(){
fmt.Println("helloworld!")
}
#### 第三步:熟悉Go的语法
接下来,你可能要花一周左右的时间熟悉Go语言的语法 。比如,变量定义、if/for、函数、Map、跨文件的程序调用…等,当然,还有一些Go特有的知识 。
当然,我更喜欢看视频教程,虽然质量参差不齐,但我仍然觉得看视频比我自己看书更有效率 。
熟悉一段Go代码:
package main
import"fmt"
func myFunc() {
i := 0
Here://这行的第一个词,以冒号结束作为标签
fmt.Println(i)
i++if i 10{goto Here//跳转到Here去
}
}func main() {//调用函数
myFunc()
}
#### 第四步:Go如何做单元测试
针对Go做测试也非常简单 。比如,这是一个被测试文件:add.go 。
package test_demofunc Add(a int, b int) int{return a + b
}
下面针对Add()函数编写测试用例,test_add.go
package test_demo
import ("testing")
func TestAdd1(t *testing.T){
r:= Add(1, 2)if r !=3{
t.Errorf("Add(1, 2)failed. Got %d, expected 3.", r)
}
}
func TestAdd2(t *testing.T){
r:= Add(2, 2)if r !=4{
t.Errorf("Add(2, 2)failed. Got %d, expected 4.", r)
}
}
你只需要执行 go test 命令就可以运行上面的测试了 。
#### 第五步:从哪儿找第三方库
当然 , 你只学习go语言本身,基本是做不了什么事的,必须要使用第三方扩展库 。
这里罗列了Go语言的第三方库,通过这些第三方库的介绍,我们也可以大概知道Go可以用来干什么 。
如果你知道库的名字的话,也可以在这个网站上搜索 。
据我了解,Go的第三方库大多都在GitHub上面 。
#### 第六步:用Go做Web开发
Go是静态语言,而且支持并发编程 , 所以 , 他有天然的性能优势,大多公司主要使用Go也是开发后端服务(即API) 。
终于到了实战阶段,如果我们真的要掌握一门语言 , 那么一定要用它来开发一个项目出来 。这个过程大概需要一个月 。
Beego是Go下在主流的Web开发框架,资料相对比较丰富,而且有完善的文档 。你可为此制定一个目标,比如用它来开发一个Blog,为此,你需要详细阅读Beego文档,以及学习相关的Web开发技术 。
等你完成这个项目的时候,我想你已经会使用Go语言了 。
推荐阅读
- 用python在京东爬虫,爬虫京东商品订单
- 新媒体如何做家政服务,怎么做新媒体运营
- 怎么刷到喜欢看的视频号,怎么刷到喜欢看的视频号内容
- jquery定位文字坐标,jquery 定位
- sqlserver主从表,sqlserver主从复制及热备
- 山寨显卡驱动怎么装不上,山寨显卡驱动怎么装不上去
- 关于筛选直播违禁词工具的信息
- mysql怎么查询时间段 mysql怎么查当前时间
- 火焰传感器python程序,火焰传感器程序流程图