既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上Go语言开发知识点,真正体系化!
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新
函数
函数:为完成某一功能的程序指令(语句)的集合,称为函数
在 Go 中,函数分为:自定义函数(自己写的)、系统函数(系统提供的)
函数的定义
基本语法:
func 函数名(形参列表) (返回值列表) {
执行语句...
return 返回值列表
}
- 形参列表:表示函数的输入
- 函数中的语句:表示为了实现某一功能代码块
- 函数可以有返回值,也可以没有
包
包的引入:
- 在实际开发中,我们往往需要在不同的文件中,去调用其他文件的定义的函数,比如在 main.go 中,去使用 utils.go 文件中的函数,如何实现?——》包
- 现在有两个程序员共同开发一个 Go 项目,程序员A 希望定义函数 cal,程序员B 也想定义函数 cal,两个程序员吵起来了,怎么办?——》包
包的原理图
包的本质实际上就是创建不同的文件夹,来存放程序文件
包的介绍
包的概念:
说明:go 的每一个文件都是属于一个包的,也就是说 go 是以包的形式来管理文件和项目目录结构的
包的三大作用:
- 区分相同名字的函数,变量等标识符
- 当程序文件很多时,可以很好的管理项目
- 控制函数、变量等访问范围,即作用域
包的相关说明:
- 打包基本语法
- package util
- 引入包的基本语法
- import “包的路径”
包的快速入门:
说明:包的快速入门——》Go 相互调用函数
使用包里面的函数
包名.函数名( )
包的注意事项和细节说明:
- 在给一个文件打包时,该包对应一个文件夹,比如这里的 utils 文件夹对应的包名就是 utils,文件的包名 通常 和文件所在的文件夹名一致,一般为小写字母
- 当引入一个文件要使用其它包函数或变量时,需先引入对应的包
- 引入方式1:import “包名”
- 引入方式2: import ( “包名”)(和引入fmt 一样)
- package 指令在文件第一行,然后是 import 指令
- 在 import 包时,路径从 $GOPATH 的 src 下开始,不用带 src ,编译器会自动从 src 下开始引入
- 为了让其他包的文件,可以访问到本包的函数,则该函数名的首字母需要大写,类似其它语言的 public,这样才可以跨包访问。(比如 untils.go )
- 在访问其他包函数时,其语法是: 包名。函数名
- 如果包名较长,Go 语言支持给包取别名。注意细节:取别名后,原来的包名就不能使用了。说明:如果给包取了别名,则需要使用别名来访问该包的函数和变量
- 在同一个包下,不能有相同的函数名(也不能有相同的全局变量),否则报重复定义错误
- 如果你要编译成一个可执行程序文件,就需要将这个包声明为 main,即 package main。这个就是一个语法规范,包名可以自定义
- 编译时需要编译 main 包所在的文件夹
- 可以指定生产的可执行文件名 .exe,放在指定路径
- go build -o bin\my.exe 后面时mian.go所在的路径
- -o 代表输出
- 当编译完会生成一个 pkg 文件,里面是库包 .a(里面是二进制)
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上Go语言开发知识点,真正体系化!
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新
升的进阶课程,涵盖了95%以上Go语言开发知识点,真正体系化!**
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新