首页   快速返回

为啥GO不火     所属分类 go
Go是一种静态、强类型、编译型、并发型,并具有垃圾回收功能的类C编程语言。
2009以开源项目的形式发布,2012年发布1.0稳定版本。
Go语言之父Pike提到:Go语言是以C为原型,以C++为目标而设计的。因为他觉得C++太复杂了 。

虽然Go以C++为目标而设计,但尴尬的是,Pike坦承Go并没有吸引来多少C++程序员,反而吸引了不少Python Ruby程序员。


核心设计师Pike和Ken都出身自贝尔实验室,共同发明了UTF-8

Go哲学:Less Is More,大道至简。

Go规定左大括号 { 不能换行
Go编译器内建工具gofmt强制源码格式化 , 没有可选项

给你(我认为)最好的,而不是给你选择。

核心特性

原生并发,以东尼·霍尔的通信顺序进程(CSP)为基础的goroutine,适合现代多核机器
垃圾回收,非常高效(请来世界顶级内存管理专家设计)
强大的标准库,对网络编程等的良好支持
CGO提供了GO调用C机制,扩展了GO的能力边界
内嵌关联数组
非侵入式的接口设计
简单清晰的语法
基于消息(Channel)编程的支持

不支持异常
编译速度快


编程语言排行榜
https://www.tiobe.com/tiobe-index/


go vs python3 
https://benchmarksgame-team.pages.debian.net/benchmarksgame/fastest/go-python3.html

Go 云计算时代流行起来,促进了云计算的发展
Docker 开源应用容器引擎
K8S 容器编排管理系统的事实标准

Go的工程化水平低于C/C++和Java等第一梯队语言
在Java占主导的生态中,Go显得比较小众,跟其他中间件的融合也存在潜在风险。

为什么放弃Go语言
https://blog.csdn.net/liigo/article/details/23699459

标准库强大但开源库不足
GO开发的大规模软件和核心系统数量不足
GO使用人员少,编程经验不足
很多中间件没有GO client

上一篇     下一篇
Content-Disposition 响应头的作用

git冲突合并及强制推送

git的各种状态

springboot2微服务实例演示

GO的垃圾特性

springboot2网关zuul实例