初识GO语言

是由google公司推出的一门编程语言,12年推出的第一个版本

Go的特点

Go为什么能在最近的IT领域炙手可热

  • 集python简洁&C语言的性能于一身

  • 21世纪的C语言

  • 顺应容器化时代的到来

  • 区块链的崛起

学习一门编程语言可以划分为下面这三个步骤

  1. 安装 编译器 or 解释器
  2. 学习语法 & 编写代码
  3. 运行

编译器或者是解释器,在这其中所起到的作用就是翻译官

将你写的代码解释成计算机能够识别的语言,再经过计算机的解释呈现出来

windows系统搭建go开发环境

  1. 下载go的编译器

All releases - The Go Programming Language (google.cn) (官网地址)

按照提示一步一步安装即可

安装路径这里可以自定义,建议最好是放在根目录,C盘的根目录或者是D盘,容易查找 C:\go D:\go

如下图所示:

这些其实就是go的编译器 在这个安装目录中有一个特殊的路径

bin目录 在bin目录中有一个go,这个go其实就是我们启动go编译器的程序

我们可以直接进入到该目录,运行go编译器 如下图所示

GO环境变量PATH

这样启动比较麻烦

我们也可以选择将这个路径添加到系统的环境变量中,这样我们后面再运行的时候直接输入go即可,不需要再带上路径了

这样一整套操作下来,就可以实现在cmd中直接输入go即可启动,无需再加完整路径

可以输入 go version 试试 查看当前安装的go的版本 到了这一步,安装的工作就已经结束了

go 复制代码
C:\Users\YANG>go version
go version go1.22.0 windows/amd64

其他配置项目

  • 创建任意一个目录

以后的GO项目都要按照要求放在这个目录

我这边所创建的目录就是在D:\Go\golang

在这个目录下需要再去创建三个文件夹,如下图所示:

-bin

-pkg

-src 以后所有的项目都要放在这个目录

-crm

-app-go

就像上面表示的这样 按照这样创建


添加GO项目相关环境变量

这里的GOBIN就是我们前面一步自己所创建的目录地址

GOPATH就是装三个文件夹的那个文件夹路径

GOROOT就是在安装go的时候所在的路径


编写代码

go 复制代码
package main
import "fmt"
func main() {
	fmt.Println("hello Go")
}

将代码保存至src目录下

这就是一个最简单的代码

现在我们来运行这串代码,看看什么效果


运行代码

本质上就是把go的代码交给go的编译器去执行。由它来展示效果

  • 方式一

先进入到存放源码的目标路径下

如上图所示,这就是go的代码运行方式

  • 方式二

也是先进入到存放源代码的目标路径下

在你执行了这个命令之后终端这边不会显示变化

在你的文件夹中 你可以看到 会多出来一个可执行文件

这个时候直接双击或者是在终端下执行hello.exe也会打印结果

go build的作用就是将你的代码编译成一个可执行的文件

也可也在构建的时候加上 -o xxx.exe 自定义名称

go 复制代码
D:\Go\golang\src\czy>go build -o go.exe

D:\Go\golang\src\czy>go.exe
hello Go

上面两个方法,其实本质上作用是一样的

在go run这个命令执行的时候,它自己内部会先执行go build 然后生成的执行文件放在一个临时目录,然后它自己再去调用临时目录内的程序

相关推荐
en.en..4 分钟前
TCP/UDP 收发流程(网络字节序---函数讲解)
开发语言·php
名字还没想好☜17 分钟前
Go 用 json.Decoder 流式解析大 JSON:边读边处理不爆内存
开发语言·后端·golang·go·json
xiangyun6120 分钟前
【408数据结构 03】线性表与顺序表:C++手写SeqList
开发语言·数据结构·c++
Lsir10110_35 分钟前
从按钮“点不动“讲起——深入理解 Qt 信号槽机制
开发语言·qt·信号处理
君科程序定做37 分钟前
用 IDL 处理高分一号(GF-1 / GF-1B/C/D)数据
c语言·开发语言
敲代码的嘎仔39 分钟前
用 Redis 合并写 + DelayQueue 延迟检测,把视频播放进度写库频率降到 1/60
java·开发语言·数据库·redis·缓存·音视频·高并发
代码中介商1 小时前
C++ 预约系统实战(一):项目总览与 C/S 架构设计
c语言·开发语言·c++
谢亮_vipxieliang1 小时前
ValidX时间段验证详解:ISO 8601标准与简化格式
java·spring boot·后端·spring·spring cloud·hibernate
我叫汪枫1 小时前
RAG 进阶:切分、检索、重排序,以及它和 Agent、微调、MCP 都是什么关系
开发语言·python
弘毅 失败的 mian1 小时前
数组和指针基础
c语言·开发语言·经验分享·笔记