当前位置:网站首页>【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”开头
边栏推荐
- zabbix监控系统邮件报警配置
- L1-026 I love gplt (5 points)
- Implementation of ZABBIX agent active mode
- Rapidjson reading and writing JSON files
- Two years ago, the United States was reluctant to sell chips, but now there are mountains of chips begging China for help
- JVM中堆概念
- rapidjson读写json文件
- Summary of MySQL common judgment functions!! Have you used it
- zabbix監控系統自定義監控內容
- 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
猜你喜欢

Oracle stored procedures and functions

How to use MOS tube to realize the anti reverse connection circuit of power supply

在所有SwiftUI版本(1.0-4.0)中原生实现Charts图表视图之思路

博客停更声明

University stage summary

Used on windows Bat file startup project

墨者学院-phpMyAdmin后台文件包含分析溯源

弈柯莱生物冲刺科创板:年营收3.3亿 弘晖基金与淡马锡是股东

JVM -- class loading process and runtime data area

L1-027 rental (20 points)
随机推荐
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
Literature collation and thesis reading methods
提升复杂场景三维重建精度 | 基于PaddleSeg分割无人机遥感影像
Introduction to sap commerce cloud B2B organization function
Heap concept in JVM
真空介电常数和真空磁导率究竟是由什么决定的?为何会存在这两个物理量?
System architecture design of circle of friends
Go learning notes - constants
大学阶段总结
Would you like to go? Go! Don't hesitate if you like it
ZABBIX 5.0 monitoring client
zabbix監控系統自定義監控內容
Text processing function sorting in mysql, quick search of collection
Implementation of ZABBIX agent active mode
21个战略性目标实例,推动你的公司快速发展
Introduction to neural network (Part 2)
How to send mail with Jianmu Ci
This monitoring system can monitor the turnover intention and fishing all, and the product page has 404 after the dispute appears
Flask 常用组件
MySQL中的文本处理函数整理,收藏速查