1. Go 是什么
这是什么:Go = Google 在 2009 年推出的编译型语言(Rob Pike、Ken Thompson 等大神作品),天生为服务端而生:语法少、编译快、并发强。
为什么用:它的目标简单粗暴——让大型团队写出性能好、部署方便、代码易读的服务端程序。有了它,编译一次就得到一个能直接扔上服务器的单文件二进制。
如何用:本章先看它的三大设计哲学、跟 Python 和 Java 的差别、谁在用它,最后跑一遍「Hello, Go!」感受它的形状。
1.1 三大设计哲学
- 少即是多:刻意只有 25 个关键字、唯一循环
for。 结论:上手快,团队统一 - 编译快、单文件:
go build产出一个二进制,服务器拷贝即运行——部署 = 拷一个文件 - 并发从第一天起:语法级
goroutine,起 1 万个并发任务易如反掌
1.2 它跟其他语言比
| 维度 | Python | Java | Go |
|---|---|---|---|
| 类型 | 动态 | 静态+繁琐 | 静态+轻量 |
| 编译 | 无 | JVM 字节码 | 原生二进制 |
| 并发 | 线程池弱 | 螺旋复杂 | goroutine 顶配 |
| 适合 | 脚本、数据 | 企业后台 | 云、网络服务 |
1.3 谁在用 Go
Docker、Kubernetes、etcd… 这些改变云世界的工具都是 Go。你想进后端基建生态,Go 是高频门票。
1.4 Hello, Go 的形状(先睹为快)
package main
import "fmt"
func main() {
fmt.Println("Hello, Go!")
}
Hello, Go!
对比 Java 十行的类结构,看得出 Go 的「少即是多」。
1.5 动手改
- 把字符串改成中英混排「你好,Go 🐸」再运行(下一章立刻跑起来)
- 心算:本站哪些部分是 Go 写不了?(几乎都能)
1.6 小结
- Go = 大团队服务端语言:语法少、编译快、并发强
- 部署即拷贝的单二进制,云原生国内第一梯队
- 基线用 Go 1.23+,官方工具链包含一切
下一章:环境搭建与第一个程序 🐸