go语言入门 | 青训营;

77 阅读2分钟

那么经过不是很严谨的go语言学习 我学到了什么

看的是go圣经《The Go Programming Language》 电子版的 链接放在下面

Go语言圣经 - Go语言圣经 (gopl-zh.github.io)

因为我自己之前一直学习的是c++的相关内容 其实也考虑过go和rust(当时认为会和c++比较像) 最后还是先放了下 借着青训营的这个机会 也终于是了解了下go

实际上与c++的不同之处还是蛮多的(也可能是我对于现代c++的了解不足 c++11之后的内容就很少知道了)

首先就是没有分号这一点 刚开始还是很不适应的 但是现在还觉得有点爽

其次就是这个对于异常处理的方式 函数可以 额外返回err (以我目前的认知 觉得非常方便)

:= 运算符也非常的好用

还有在创建路由等方面 都让我耳目一新

但也有一些对我的雷点 比方说 package import 和配置go mod 最开始协调这些的时候都有些不适 也许是缺乏项目经验的原因吧

也有很奇怪的点 比如没有前置运算符 (实际上也是一种简化) 并且自加自减操作不是表达式而是语句 这都和我的印象有些偏差 像是一个更换了一些零件的c++

所以我个人还是觉得 对于学过c/c++的同学来说 想上手go还是很快的 不过想进行优化什么的一定又要下很多功夫了吧

在学习的过程中 能感觉到go虽然在国内不能算的上冷门的语言了 但相关的资料还是较少 好在还有文档可看(而且好多的东西也都是在掘金才看到的 许多内容也更是得跑到人家的博客里去看)

一开始我想要用vscode来编写go(因为我没用过jetbrains的ide) 但配环境这一点就没成 依赖一直有问题 上网搜索的好多方法也都不管用 最后 还是干嘛折磨自己呢 过去用goland了 感觉也是挺好用的嘛 干脆以后就这样用了

文章没有图文因为我到现在才想起来写笔记这个事情 学习中间打的代码也都被覆盖掉了 不过大家应该也都是这个吧

package main

import "fmt"

func main() {
    fmt.Println("Hello, world")
}

总之学go 是很有趣的一次体验 多掌握了一门语言也总觉得自己好像多了一点可能

加油吧