go语言基础 | 青训营

119 阅读3分钟

前言

由于我之前是学Java和C++的,所以对于go的认知可以说是啥也没有,因此我有认真的听每一节课。最开始我看go语言的课程,还说哎哟这居然知识点这么少吗?几个小时就讲完了,后来自己看完视频不能说懂了吧,只能说基本还是不会,视频缺乏了一些基础内容的铺垫,所以我后续就跟着各路的文档进行学习go的基础知识,以达到更好的学习效果。

go语言的若干特点:

go语言的类型声明:

有四种主要声明方式:

var(声明变量), const(声明常量), type(声明类型) ,func(声明函数)。

go语言的常用的命令及解析:

go env用于打印Go语言的环境信息。

go run命令可以编译并运行命令源码文件。

go get可以根据要求和实际情况从互联网上下载或更新指定的代码包及其依赖包,并对它们进行编译和安装。

go build命令用于编译我们指定的源码文件或代码包以及它们的依赖包。

go install用于编译并安装指定的代码包及它们的依赖包。

go clean命令会删除掉执行其它命令时产生的一些文件和目录。

go test命令用于对Go语言编写的程序进行测试。

我们常用的由go build+路径,这个就是我们最初给的抖声的demo里面的,通过这个代码,可以让我们生成抖声exe文件(如下图);其次常用的就是go get命令,我最开始的时候,一直加载不上gin的依赖,使用goland软件的时候,直接选择导入一直无响应,后来换了go get的命令之后,就成功了。其他的命令如果使用的是goland的程序的时候,那么就基本上都用不上。例如go run,可以直接软件里面run。而go test可以用testing依赖来测试。

image.png

下划线的使用

当下划线出现在import里面的时候(这个我基本没用上,但是有看到,保持知识的完整性) ,意味着不是引用该包,仅仅是为了调用改包init()函数,所以无法通过包名来调用包中的其他函数。

package main
import _ "./fmt"

func main() {
    //fmt.println("你好")
    //这样子就会出错
}

当下划线出现在代码里面的时候,作用是忽略这一块的值。例如我下面从我们小组的代码中截取了一块,原本第二个参数是个boolean类型的变量叫做flag,如何通过flag的值来判断拿到了id信息了没有,这里为了演示,我们就偏不要这个信息了,用“_”来代替了,这样子就可以忽略了

package service  
  
import (  
"errors"  
"fmt"  
"miniTiktok/dao"  
)  
  
// 发表评论  
// 返回评论包含完整字段的信息 <- 用于返回字段中需要  
func (CommentServiceImpl CommentServiceImpl) AddComment(comment_dao dao.Comment_dao) (Comment_service, error) {  
  
// 存表  
// 这里为了取到评论的id 因为评论id是自增的 之前拿不到id的信息  
commentRtnDao, _ := dao.Insert2Comment_dao(commentIndao)    
}

本期的笔记就先到这里,之后的笔记后续继续补上