共计 2446 个字符,预计需要花费 7 分钟才能阅读完成。
如何配置 Go 应用程序,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。
Go 正在成为流程的编程语言。
每个编程语言都有自己的语法或结构,有属于自己的风格,这才是每个语言的独特所在。Go 语言也不例外,它以自己的方式,轻松优雅,让软件开发变得更有趣。
Go 程序结构
要了解 Go 程序的结构,先写一下 Go 程序,我们先重新审核我们最喜爱的 Hello,World! 程序。
package main import fmt func main() { fmt.Println( Hello, World!)}
每个源文件均以.go 扩展名为结构,头部首行必须进行包声明。在上面的 helloworld.go 文件中,第一行的 package main 告诉 go 编译器,这个源文件将包含 go 的入口 main(主函数)函数。包声明和主函数这种组合使它成为一个独立的可执行 go 程序。
在上面的代码中,是打印字符串到控制台,这是标准输出。为此,我们使用 import 关键字导入 fmt 包。fmt 软件包是 format 的综合,它附带了 Go 标准库。
fmt 软件包提供了许多用于写入标准输出的选项。接下来我们会分别讲解导入多个包的语法。
运行 Go 程序
我们使用 go run 或 go build 来运行相关 Go 程序。使用这些命令,来告诉 Go 编译器来运行 Go 程序。
使用 go 运行 hello-world.go
我们还可以使用 go build 命令,该命令将生成一个叫做 hello-world 的可执行文件,它可以像其它可以的执行文件一样脱离 go 来独立运行。
某此时候,我们可能希望更改可执行文件的名字,可以使用 go build -o file-name 命令来实现,该命令会创建一个可执行的二进制文件。例如:
$go build -o exe #being in the hello-world directory
$./exe #running the executable Hello,World!
还有一些时候,我们希望让自己的应用程序可以被安装。我们使用 go install package-name 命令。该命令会创建一个二进制可执行文件并存储到 $GOPATH/bin 目录中。
我们需要确定将 GOBIN 添加到系统的 PATH 环境变量中,这样就可以在系统的任何地方运行该二进制文件。
代码注释
在正确的位置添加代码注释,与编写可维护的代码同样重要。
在 Go 中,注释不仅仅是添加关联解释的一种方式,同时也是一种记录 API 的良好方式。我们将在讨论函数时看到它们。
有两种代码注释:一种是行注释,一种是块注释。
1. 行注释,使用 // 开头,后面就是注释掉的文本
2. 块注释是将文本放在 /* 和 */ 之间。以下是两个例子:
// package main defines the entry point
package main
// import the fmt package from standard library
import fmt
/*
The main function is the entry point in a Go program.
The main function does not have a return type.
Also, it does not accept any parameters.
*/
func main() {
fmt.Println(Hello, World!)
}
为什么没有分号
正如您在上面的代码中所观察到的那样,我们的代码中没有放置单个分号。嗯,那是因为幕后 Go 为你做了。与 C 一样,Go 的语法也使用分号来终止语句,但它们不必出现在源代码中。以下是 Go 文档所说的内容:
与 C 一样,Go 的形式语法使用分号来终止语句,但与 C 语言不同,这些分号不会出现在源语句中。相反,词法分析器使用一个简单的规则在扫描时自动插入分号,因此输入文本大多没有分号。
规则是这样的:如果换行符之前的最后一个标记是一个标识符(包括 int 和 float64 类的单词),一个基本文字,如数字或字符串常量,或其中一个标记 break continue fallthrough return ++ — ) }
词法分析器总是在令牌后插入分号。这可以概括为“如果换行符出可以结束语句的标记,则插入分号”。
在结束括号之前也可以省略分号,因此诸如 tokens break continue fallthrough return ++ — ) } 的语句 tokens break continue fallthrough return ++ — ) }
不需要分号。
tokens break continue fallthrough return ++ — ) }
要阅读有关内幕的更多信息,请继续花些时间阅读 Go Docs。
重新代码守则
如前所述,每个独立应用程序必须具有 package main 声明,并且具有此声明的.go 文件必须具有 main 函数。这个 main 功能是我们应用程序的入口点,就像其他编程语言一样,如 C,Java,C#等。
不同的是,在 Java 或 C#中,main 函数可以接受参数(string [],args),而在 Go 中 main 函数不接受任何参数。此外,主要功能不返回任何内容。
请注意我们如何导入 fmt 包:import fmt。仅当我们导入单个包时,此语法才有效。如果我们要导入多个包,那么我们需要在 import () 对包进行分组。这是一个例子:
// importing multiple packages in Go import (context database/sql fmt log)
请注意,我们还没有放一个; 在任何导入包的末尾,因为这将由词法分析器为我们完成。
小结
Go 有一个非常简单的程序结构,其感觉和读取更像是 C. 遵循相同的模式,我们将 main 功能作为我们应用程序的入口点。Go 提供了一种编写干净代码的便捷方式,可以在需要时巧妙地插入分号。我们的代码中的逻辑描述有不同类型的注释。稍后我们将看到这些注释如何为我们的包构建文档。
看完上述内容,你们掌握如何配置 Go 应用程序的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注丸趣 TV 行业资讯频道,感谢各位的阅读!