当前位置:网站首页>【Go基础】1 - Go Go Go
【Go基础】1 - Go Go Go
2022-07-04 07:40:00 【李易安QSR】
一、Go历史
1、起源
诞生于谷歌,为了解决以下问题
- 多核硬件架构
- 超大规模分布式计算集群
- Web模式导致的前所未有的开发规模和更新速度
2、Go语言创始人

3、为什么叫Go

名字足够简单,不管作为后缀,还是加一些工具类型
4、安装和下载
官网啥都有:https://golang.google.cn/
IDE:Atom、VSCode、GoLand
二、Go的第一行代码
1、开发环境构建
- 1.8版本之前必须要设置GOPATH这个环境变量
- 1.8版本之后如果没有设置环境变量,会使用默认值
- Unix上会默认$HOME/go
- windows上会默认是%USERPROFILE%/go
- 在Mac上GOPATH可以通过修改用户级别环境变量,~/.bash_profile来进行设置
如何查看自己的go版本
go version
如何查看自己当前环境变量配置
go env
2、记事本编写hello.go
package main //包,表明代码所在的模块
//引入标准化输入输出包
import "fmt"
func main() {
fmt.Println("hello go!")
}
执行命令
# 直接运行
go run hello.go
# 直接生成二进制(可执行文件,windows会直接生成一个.exe文件)
go build hello.go
3、Go如何识别应用程序入口
三点必须
- 必须是main包下边(文件夹名字和package名字一般情况下需要一样,go不做强制要求)
问:如何定义这个main包呢?创建一个名字是main的文件夹就可以?
答:不是的,只是需要在这个文件的第一行,声明package时候说明为main
- 必须是main方法
- 文件名不一定是main.go(但是习惯上是)
4、如何控制台传参
package main
import (
"fmt"
"os"
)
func main() {
fmt.Println(os.Args)
if len(os.Args) > 1{
fmt.Println("***" + os.Args[1])
}
os.Exit(0)
}
5、如何编写一个测试程序
需要满足
- 文件名以“_test”结尾
- 方法名以“Test”开头
边栏推荐
- L1-021 important words three times (5 points)
- When JDBC connects to es query, is there a God who meets the following situation?
- zabbix监控系统邮件报警配置
- PCIE知识点-010:PCIE 热插拔资料从哪获取
- Introduction to rce in attack and defense world
- 节点基础~节点操作
- I was pressed for the draft, so let's talk about how long links can be as efficient as short links in the development of mobile terminals
- User login function: simple but difficult
- A real penetration test
- 如何用MOS管来实现电源防反接电路
猜你喜欢

socket inet_ pton() inet_ Ntop() function (a new network address translation function, which converts the expression format and numerical format to each other. The old ones are inet_aton(), INET_ ntoa

Zephyr learning notes 1, threads

Thesis learning -- time series similarity query method based on extreme point characteristics
![[web security] nodejs prototype chain pollution analysis](/img/b6/8eddc9cbe343f2439da92bf342b0dc.jpg)
[web security] nodejs prototype chain pollution analysis
![[kubernetes series] kubesphere is installed on kubernetes](/img/2b/eb39cf78b3bb9908b01f279e2f9958.png)
[kubernetes series] kubesphere is installed on kubernetes

时序数据库 InfluxDB 2.2 初探

Oceanbase is the leader in the magic quadrant of China's database in 2021
![[network security] what is emergency response? What indicators should you pay attention to in emergency response?](/img/2e/96da79d82ae2c49a3a0ab9909467ac.jpg)
[network security] what is emergency response? What indicators should you pay attention to in emergency response?

Flask 常用组件

Comparison between applet framework and platform compilation
随机推荐
L1-025 positive integer a+b (15 points)
Go learning notes - constants
Literature collation and thesis reading methods
Blue Bridge Cup Quick sort (code completion)
ZABBIX monitoring system deployment
时序数据库 InfluxDB 2.2 初探
University stage summary
Mysql database - function constraint multi table query transaction
Zephyr study notes 2, scheduling
How does dataframe calculate the average value of each row as another column
Docker install MySQL
Zabbix agent主动模式的实现
Guoguo took you to write a linked list, and the primary school students said it was good after reading it
What are the work contents of operation and maintenance engineers? Can you list it in detail?
How to reset IntelliSense in vs Code- How to reset intellisense in VS Code?
MySQL中的文本处理函数整理,收藏速查
Zephyr 学习笔记2,Scheduling
线性代数1.1
When JDBC connects to es query, is there a God who meets the following situation?
The cloud native programming challenge ended, and Alibaba cloud launched the first white paper on application liveliness technology in the field of cloud native