语言除了基本功能和机制之外,强大的是库和框架。更强大的是社区和生态的力量,能将一门语言带入良性循环的发展状态。下面的笔记将从语言机制和库以及框架的方面来介绍。
一.go语言特点:
1.编译型:
编译成可执行二进制文件,运行时无依赖,全打包进可执行程序中,比C/C++可执行程序大。
2.快速编译:
设计角度优化
3.垃圾回收:
不用用户管理内存,无堆栈的概念。在应用设计时有时为了高效会引入对象池,资源池的概念。垃圾回收算法很高效且一直在不断改进。
4.易测试:
提供易于测试的机制
5.协程和通道:
go语言最大的特点,大大简化编程模型。传统语言在处理多线程,多进程,进程间通信,同步等机制时太复杂。
二.库:
1.日志库
2.配置解析库
3.数据库操作库
4.网络库:net/http,fasthttp
5.加解密库
三.框架:
1.beego
2.gin
3.go-grpc