一、go语言概述
Golang语言,简称go,是一种快速、静态类型的编译型语言,用起来像一种动态类型的解释性语言。同时go语言的简单和高性能(性能接近C/C++)特点受到了广大开发者的青睐并且拥有一个活跃的社区。
二、go语言的应用场景
1、Web 服务器
2、中间件开发
3、微服务开发
4、游戏服务端等
三、Go 语言环境安装
1、Go 语言支持以下系统:Linux、FreeBSD、Mac OS X(也称为 Darwin)、Windows
2、go官网The Go Programming Language
1)首先打开go官网,然后点击download下载最新稳定版本,比如本文示例下载稳定版本1.19
2)下载完毕后,双击go安装包。我自己的电脑是window系统,所以后缀名为.msi。双击该文件可以自动安装。在选择电脑盘符时候任意即可,本人安装在c盘。新版本的go语言,在安装时候自动配置系统环境变量,不用手动配置。安装完毕后打开cmd命令行,输入go env。如果出现如图所示即为安装成功
如果没有成功,请配置环境变量,如图:
1)
在我的电脑上右键,点击属性,选择高级,打开下面这个页面
2)新建GO_HOME 系统环境变量,指向go的安装目录,笔者这里是
GO_HOME=C:\go\go1.19.windows-amd64\go
新建GO_HOME 系统环境变量后,找到系统环境变量Path,然后新建编辑 Path
环境变量配置完成后,打开 cmd 窗口测试如图:
三、go 使用的编辑器有很多种,根据个人喜爱来选择。比如vscode, goland , sublime,Eclipse、LiteIDE等。笔者用goland开发。备注:goland为付费工具。但是有一个月的免费使用体验期。
四、第一个go程序
1)想必到这里你已经迫不及待了吧,来体验一下go语言的第一个程序吧
· 打开编辑器,新建文件,文件名以.go后缀结尾,如图:
笔者这里起了一个文件名为main.go的文件,然后点击途中红框的绿点运行程序。,看到红框那个helloworld 就是我们输出的结果
看着go语言代码的简洁,是不是很容易呢?
解析一下go的语言简单结构
// 定义包, 一个程序通常只有一个main包,作为程序的入口
package main
// 导入包,这里导入fmt包
import "fmt"
// 通过func关键字定义函数
// 这里定义的是程序的入口函数main, 程序从这个函数开始执行
// 通常一个程序是有一个main函数
func main() {
// 调用fmt包的Println函数,打印Hello World。
fmt.Println("Hello World")
}
比如你学过java,java需要建一个类名,然后在文件里面编写helloworld
public class HelloWorld {
public static void main(String[] args) { // java的main程序入口类似于go语言的 func main 入口,所有代码段运行都必须经过这个入口。否则运行不通过。
System.out.println("Hello World"); // go 语言的fmt.Println,类似System.out.println控制台输出,
}
}
java和go语言对比
package main
import "fmt"
func main() {
fmt.Println("Hello World")
}
对比起来是不是简洁很多呢
学习go语言之前,首先我们学习一下go语言的注释:
注释是什么? 答:注释就是对代码的解释和说明。目的是为了让别人和自己很容易看懂,一看就知道这段代码是做什么用的。是不参与程序运行的
1.注释
单行注释
// 单行注释
多行注释
/*
多行注释
*/
在前面第一个程序helloworld中我们有使用到注释, 用法如图
// 定义包, 一个程序通常只有一个main包,作为程序的入口
package main
// 导入包,这里导入fmt包 单行注释
import "fmt"
/* 多行注释
通过func关键字定义函数
这里定义的是程序的入口函数main, 程序从这个函数开始执行
通常一个程序是有一个main函数
*/
func main() {
// 调用fmt包的Println函数,打印Hello World。
fmt.Println("Hello World")
}
学会注释后,接下来学习我们的变量吧
变量定义
什么是变量呢? 变量:可变的量,在编程语言中,变量其实就是一个名字用来存储和代表不同值的东西,是一个存储东西的容器
语法:
var 变量名 变量类型
例子:
// 定义一个int类型变量
var i int
// 定义一个字符串类型
var a str
// 定义一个布尔值类型
var b bool
....
变量初始化
定义变量的时候直接初始化
语法1:
var 变量名 变量类型 = 初始值
例子:
// 定义变量i, 数据类型为int, 初始值为10
var i int = 10
// 定义两个int变量i和j, 并且i的初始值为1,j的初始值为2
var i, j int = 1, 2