目录
golang
介绍
Go(也叫 Golang)是由 Google 开发的开源编程语言,设计目标是简洁、效率和高并发
- 自从 2009 年发布以来,Go 迅速发展,特别是在云计算、微服务、容器化(如 Docker 和 Kubernetes)等领域得到了广泛应用
- Go 语言是一门面向并发和面向组合的语言
面向并发
Go 的并发模型通过 goroutine 和 channel 来实现轻量级的并发
- goroutine:Go 通过轻量级的线程——goroutine,支持并发编程,允许程序同时执行多个任务。Goroutines 的创建和切换成本非常低,比传统线程更高效
- channel:Go 通过 channel 实现 goroutine 之间的通信,确保数据在并发环境中的安全传递。Go 使用 通信顺序进程(CSP)模型,通过管道(channel)将数据从一个 goroutine 传递到另一个
面向组合
Go 语言的设计偏向 组合 而非 继承
- 这使得 Go 在实现面向对象编程时,避免了传统oop中的类继承层次 (虽然它有一些支持面向对象编程的特性,但它并不遵循经典的面向对象范式)
- 提供了结构体(struct)和接口(interface)来实现对象行为
特点
高性能高并发
- 内置对高并发的支持,不需要寻找经过高性能优化的第三方库
- 只需要应用标准库或基于标准库开发的第三方库即可
语法类似c语言,但是简化版,非常简洁
- 去除了许多其他编程语言中常见的复杂特性
标准库功能丰富
- 涵盖了从网络、加密到并发等多个方面的功能
工具链完善
- 内置了单元测试框架
静态编译
- 不需要附加其他东西,部署方便快捷
快速编译
- 能快速构建并测试代码
跨平台
- 开发和部署的过程非常简单
垃圾回收机制
- 不需要考虑内存分配释放,类似java
项目结构
图示
入口文件 main.go
package main
- 包声明
- 每个 Go 程序都需要一个main包
import (" "...)
- 导入语句
- 这里的import语句导入了两个标准库:fmt,os
func main() { }
- 主函数,程序的入口点