简单说说 golang 的主要优点

2020-07-23

我们要考虑一个高性能解决方案,首先要考虑:方案是否能解决问题,其次是否足够简单,研发人员能少写代码,运维方便维护部署。而 golang 比较符合预期。

我使用 golang 时间不多,没有深入研究,算是入门级别,也总结一下使用的心得吧,下面简单说说 golang 的几个主要优点。


1. 优点

1.1. 高性能-协程

golang 源码级别支持协程,实现简单;对比进程和线程,协程占用资源少,能够简洁高效地处理高并发问题。


1.2. 生态

背靠谷歌,生态丰富,轻松 go get 获取各种高质量轮子。用户可以专注于业务逻辑,避免重复造轮子。


1.3. 部署

部署简单,源码编译成执行文件后,可以直接运行,减少了对其它插件依赖。不像其它语言,执行文件依赖各种插件,各种库,研发机器运行正常,部署到生产环境,死活跑不起来,需要各种安装和版本匹配。


1.4. 跨平台

很多语言都支持跨平台,把这个优点单独拿出来,貌似没有什么值得称道的,但是结合上述优点,它的综合能力就非常强了。


1.5. 代码极简

个人认为 golang 是 C++ 和 python 的结合体,它是一门全新的语言,入门和使用相对简单,是性能和代码极简之间的一种平衡。


2. 总结

golang 还有很多优点,例如有自己的 GC,有 defer 功能,函数可以返回多个参数等等,个人认为,最主要还是上面提到的几个。

PS: 语言只是工具,没有高低之分,解决问题,哪个方便用哪个。