C、C++、C#、Python都精通的老鸟对Go语言的印象:
Go语言更像是C语言的高级封装,或称之为增加了垃圾处理功能和一大票基础Lib库的高级C语言,或者称之为Super C。
Super C这种直接编译成 bin 的能力的确很棒,部署安装很方便,但 CPython 稍微努力一下也能实现。
指针的使用让我感觉回到了C++时代。
编译期间的语法检查的确可以大幅降低程序低级错误的概率,这一点C、C#、JAVA都具备,Python在这方面差很多,只有非强制性的 typing 标识。
如果是科学运算或大数据相关的项目,pandas,numpy,TensorFlow,Keres这些库是Go语言所不具备的,只能Python,或用Python做计算后台,Go做前端Web。
如果是公司团队开发项目(例如Web项目),团队越大,Go语言优势越大,因为强制规范语法,减少低级错误。
如果是小团队开发项目,也可以使用Python,但最好强制使用 typing 做类型约束,减少低级语法错误的出现概率,同时提高团队协作的效率。
个人开发小项目,Python仍是优选,因为它灵活快速,框架和库都很丰富,能省不少力气,避免自己造轮子。
有疑问加站长微信联系(非本文作者)