在MIT6.824 Go项目中,很多时候大家都知道逻辑上如何实现,但具体到代码中却不知从何做起(尤其对于写惯了Python的同学(‵﹏′))。为了完成该项目,需要掌握的Go相关知识不多,这里简单做一个总结。
GoLand
建议使用GoLand进行代码的编写和调试,有丰富的断点调试、函数提醒,自动补全等等对初学者非常实用的功能。初次使用GoLand,切记在Settings中设置GOROOT和GOPATH环境变量
- 如何设置调试/运行环境?
为开发和测试方便,可为每一个Lab单独设置一个Go Test Configurations。如图,1)直接编译运行3A所有test cases;2)调试运行;3)你的test_test.go脚本所在package;4)在go test运行时,只要函数名包含该pattern关键词都会运行
2. Golang没有传统意义上的try-catch机制,但可通过golang提供了recover机制进行断点调试
func A() {
defer func() {
if r := recover(); r != nil {
f