Goland 神器之代码自动补全 在我们编写代码时,为了提高效率,常常需要使用代码自动补全功能,这是现代化编程工具的常规功能之一。在 Go 语言中,我们有幸使用 JetBrains 开发的 Go 语言 IDE——Goland。Goland 提供了非常强大的代码自动补全功能,本文将详细介绍如何使用这个神器。 Goland 中的代码自动补全分为两种:基于已有变量和函数的代码自动补全和基于代码模板的代码自动补全。我们逐一来讲解。 基于已有变量和函数的代码自动补全 在使用这种代码自动补全功能时,我们通常需要先定义一些变量或者函数。在之后编写代码时,我们可以使用这些已有的变量或函数来自动补全一些代码。 在定义变量时,我们可以使用“Ctrl + Space”或者“Alt + /”来进行自动补全。在使用“Ctrl + Space”时,Goland 会根据当前的变量类型和上下文中的变量名称,来推测接下来的可能的操作或方法,进而进行自动补全。在使用“Alt + /”时,Goland 则会根据当前光标所在的位置,来推测可能的变量或方法名称,并进行自动补全。下面是一个例子: ```go func main() { var a int a. // 在此处输入“.”,按下“Ctrl + Space” } ``` 在输入“.”并按下“Ctrl + Space”后,Goland 将会自动弹出“a”的所有可能操作或方法,如下图所示: ![image-20200415143231320](https://raw.githubusercontent.com/yidao620c/core_images/master/nlp/image-20200415143231320.png) 同理,我们也可以在使用函数时进行代码自动补全。下面是一个例子: ```go func add(a, b int) int { return a + b } func main() { var a int var b int add(a, // 在此处输入“,”,按下“Alt + /” } ``` 在输入“,”并按下“Alt + /”后,Goland 将会自动弹出所有可能的变量或函数名称,如下图所示: ![image-20200415143932740](https://raw.githubusercontent.com/yidao620c/core_images/master/nlp/image-20200415143932740.png) 基于代码模板的代码自动补全 在使用这种代码自动补全功能时,我们可以使用一些代码模板来快速生成代码。Goland 内置了许多代码模板,我们只需要输入一些简单的代码片段,就可以自动生成许多代码。 在使用代码模板时,我们通常需要在编辑器中输入一个代码模板的前缀,然后按下“Tab”键来进行代码自动补全。下面是一些常用的代码模板: | 前缀 | 功能 | | ---- | ---- | | for | 生成一个 for 循环 | | if | 生成一个 if 语句 | | ife | 生成一个 if-else 语句 | | fn | 生成一个函数 | 下面是一个例子: ```go if err != nil { // 在此处输入“if”。按下“Tab”。 } ``` 在输入“if”并按下“Tab”后,Goland 将会自动弹出一个 if 语句模板,如下图所示: ![image-20200415144752915](https://raw.githubusercontent.com/yidao620c/core_images/master/nlp/image-20200415144752915.png) 我们只需要修改一下代码片段中的变量名称和具体实现,就可以快速生成一个 if 语句。同理,我们也可以使用其他的代码模板来快速生成代码。 总结 在使用 Go 语言进行编程时,Goland 的代码自动补全功能可以帮助我们快速生成代码,并提高我们编写代码的效率。上面介绍了基于已有变量和函数的代码自动补全和基于代码模板的代码自动补全两种方式。希望本文对大家使用 Goland 时有所帮助。