Go 语言快速开发入门
需求
要求开发一个hello.go程序,可以输出helloworld
开发的步骤
(1)开发这个程序/项目时,go的目录结构怎么处理


package main
import "fmt"
func main() {
fmt.Println("hello,world")
}
说明:
I. go文件的后缀是.go
II. package main
表示该hello.go文件所在的包是main,在go中,每个文件都必须归属于一个包
III. import "fmt"
表示:引入一个包,包名fmt,引入该包后,就可以使用fmt包的函数,比如:fmt.Println
IV. func main(){
}
func是一个关键字,表示一个函数。
main是函数名,是一个主函数,即我们程序的入口
V. fmt.Println("hello,world")
表示调用fmt包的函数Println输出"helloworld"
(3)通过go build命令对该go文件进行编译,生成exe文件
然后运行hello.exe即可输出"hello,world"
(4)注意:通过gorun命令可以直接运行hello.go程序[类似执行一个脚本文件的形式]
linux下如何开发Go程序
说明:linux下开发go和windows开发基本是一样的。只是在运行可执行的程序时,是以/文件名方式
演示:在imux下开发Go程序。

编译和运行hello.go


也可以直接使用go run hello.go的方式运行

MAC下如何开发Go程序
说明:在mac下开发go程序和windows基本一样
演示一下:如何在mac下开发一个hello.go
程序源代码的编写:hello.go

编译再运行

直接go run hello.go来运行

Golang执行流程分析
如果是对源码编译后,再执行,Go的执行流程如下图

如果我们是对源码直接执行 go run源码,Go的执行流程如下图

两种执行流程的方式区别
1)如果我们先编译生成了可执行文件,那么我们可以将该可执行文件拷贝到没有go开发环境的机器上,仍然可以运行
2)如果我们是直接go run go源代码,那么如果要在另外一个机器上这么运行,也需要go开发环境,否则无法执行。
3)在编译时,编译器会将程序运行依赖的库文件包含在可执行文件中,所以,可执行文件变大了很多。
编译和运行说明
1)有了go源文件,通过编译器将其编译成机器可以识别的二进制码文件。
2)在该源文件目录下,通过go build对hello.go文件进行编译。可以指定生成的可执行文件名,在windows下必须是.exe后缀。

3)如果程序没有错误,没有任何提示,会在当前目录下会出现一个可执行文件(windows下是.exe,Limux下是一个可执行文件),该文件是二进制码文件,也是可以执行的程序。
4)如果程序有错误,编译时,会在错误的那行报错。有助于程序员调试错误


Go程序开发的注意事项
1)Go源文件以“go”为扩展名。
2)Go应用程序的执行入口是main函数。这个是和其它编程语言(比如java/c) 相似
3)Go语言严格区分大小写。
4)Go方法由一条条语句构成,每个语句后不需要分号(Go语言会在每行后自动加分号),这也体现出Golang的简洁性
5)Go编译器是一行行进行编译的,因此我们一行就写一条语句,不能把多条语句写在同一个,否则报错

6)go语言定义的变量或者import的包如果没有使用到,代码不能编译通过

Go语言的转义字符(escapechar)
说明:常用的转义字符有如下
1)t:表示一个制表符,通常使用它可以排版

2)\n
:换行符
3)\\
:一个\
4)\"
:一个"
5)\r
:一个回车
6)案例:
package main
import "fmt" //fmt包中提供格式化,输出,输入的函数
func main() {
//转义字符的使用
fmt.Println("语言\t国家\t肤色")
fmt.Println("汉语\t中国\t黄色")
fmt.Println("英语\t英国\t白色")
}
效果:

Golang开发常见的问题和解决方法
- 文件名或路径错误

注释
介绍注释:
用于注解说明解释程序的文字就是注释,注释提高了代码的阅读性;
注释是一个程序员必须要具有的良好编程习惯。将自己的思想通过注释先整理出来,再用代码去体现。
在Golang中注释有两种形式
1)行注释
基本语法:
//注释内容
举例:

2)块注释(多行注释)
基本语法 :
/注释内容/
举例说明:

使用细节:
I. 对于行注释和块注释,被注释的文字,不会被Go编译器执行
2)块注释里面不允许有块注释嵌套[注意一下]
规范的代码风格
- 正确的注释和注释风格:
1)Go官方推荐使用行注释来注释整个方法和语句。
2)带看Go源码 - 正确的缩进和空白
I. 使用一次tab操作,实现缩进
II. 运算符两边习惯性各加一个空格。
比如:2 + 4 * 5
III. Go语言的代码风格
正确写法:
package main
import "fmt"
func main(){
fmt.Println("hello,world")
}
错误写法:
package main
import "fmt"
func main()
{
fmt.Println("hello,world")
}
这种写法是不正确的,Go语言不允许这样编写。
(Go语言不允许这样写,是错误的!)
Go设计者思想:一个问题尽量只有一个解决方法
5)一行最长不超过80个字符,超过的请使用换行展示,尽量保持格式优雅
举例说明:

Golang 官方编程指南
Golang 中文网站:https://studygolang.com/


公众号直接回复“go语言中文文档”获取下载地址。
如遇图片不能正常查看等问题请参阅公众号文章:https://mp.weixin.qq.com/s/SjmDkdEw-2jCxXmljYMkzQ

【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek “源神”启动!「GitHub 热点速览」
· 我与微信审核的“相爱相杀”看个人小程序副业
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· 如何使用 Uni-app 实现视频聊天(源码,支持安卓、iOS)
· C# 集成 DeepSeek 模型实现 AI 私有化(本地部署与 API 调用教程)