【Golang】开发环境设置〜HelloWorld直到
我开始学习并熟悉Golang,因为明年在新工作中要用到它。
另外,我对golang的学习主要以《入门Go语言》(作者:松尾爱贺)中所述为基础进行推进。
0. Golang 是什么?
Go 是一种开源编程语言,使得构建简单、可靠和高效的软件变得容易。
(来自golang.org的公式)
製作者
谷歌是由Google公司开发,在2009年进行发布的。
(2) 特点
将其编译为本地代码。
在不使用像Java这样的虚拟机来弥补各个执行环境的差异的情况下,使用原生码生成执行文件。
→ 从执行速度的角度来说是有优势的。
在多个平台上运行
在标准的开发环境下,几乎无需考虑操作系统或CPU的差异,可以开发适用于任何平台的程序,这将在开发成本和可维护性方面带来优势。
对操作系统的独立性
Go语言本身具有标准库所具备的功能,甚至不依赖于各个操作系统所拥有的标准库。因此,可以实现与操作系统和库的类型以及变化无关的开发。
④垃圾收集员
通过支持垃圾收集器,可以预防可能发生的内存操作问题。
经过一番调查,我发现垃圾收集器也有其深奥的世界。据说Go语言的垃圾收集器既简单又实用,如果有机会,我也想进一步探索这方面的内容。
同时进行处理
利用「channel」和「goroutine」,可以实现简单、安全和高效的并发编程。
* 在目前阶段,我还无法完全理解这一点,但在之后的学习中会深入挖掘。
顺便提一句,关于并行处理和并发处理
并列计算即同时进行多个计算任务的技术。
1. 设备开发
苹果操作系统高山猫 (版本10.14.6) 的MacbookPro
2. 系统环境的建立
由于已经设置了Homebrew,所以我将使用homebrew命令安装golang的包。顺便说一下,根据上述书中的说明,下载并执行官方的包文件的方法在我这里会因为找不到go命令而失败,所以我觉得重新通过Homebrew安装更方便。
$ brew install go
关于IDE,我们在这里先不使用它继续进行。
如果向新工作咨询,你可以问到他们使用什么,但是现在我们决定使用平时常用的编辑器(cotEditor)来进行源代码编辑。
请使用支持 UTF-8 编码的编辑器!
只要安装了包和有文本编辑器,似乎就可以进行golang开发。但是由于golang仅限于使用utf-8编码,因此所使用的编辑器必须至少具备这一点。
你好世界。
(1) 简约的酱汁 de
package main;
import (
"fmt"
);
func main() {
fmt.Println("Hello World!");
};
(2) 进行
$ go run helloworld.go
(3) 输出结果
Hello World!
4. Golang的约定
(1)入口点
在Golang中,程序的入口点(即程序开始执行的地方)被规定在main包的main函数中。
(2) 包裹
在Golang中,每个源文件只能包含一个包,并且只能在一个包中进行声明。
如果想要创建另一个包,则需要分开文件。
相反,如果是同一个包,则可以将其组合到一个文件中。
(即使在同一个包中,也可以分开成不同的文件)
(3)导入
在Golang中,如果存在未被引用的包引入,将会出现编译错误。
然而,通过不进行包引用检查的写法(_(下划线) 包名称),也可以避免此错误。
package main;
import (
/* 参照チェックなしのimport */
_ "fmt"
);
func main() {
/* 何もしない */
/* でもコンパイルエラーにならない */
};
在中文中本地化以下句子,只需提供一种选择:
(4) 评论
在Golang中,可以使用/*注释*/或//注释的方式来编写注释。
然而,在注释中不能编写注释,这会导致编译错误。在注释中编写行注释是可以的。
package main;
import (
"fmt"
);
func main() {
print("sample");
/* コメント
/* コメント内のコメント <- エラーになる */
*/
/* コメント
// 行コメント行ならOK
*/
};
当选项中有突出显示时,很容易看出外部评论的结束点与起始点没有连接。
(5) 分号
在Golang中,可以在行末加上分号,但由于其”全部都是可省略的”,因此,可以将在2.(1)中所述的源代码以以下方式进行编写,同样也能正常运行。
package main
import (
"fmt"
)
func main() {
fmt.Println("Hello World!")
}
作为一个习惯了在Swift中不写分号的人来说,我对这个语言规范感到非常感激。
一旦到这里。
由于学习进展顺利,我将持续进行追加及发布新的文章。