Skip to main content
 Web开发网 » 操作系统 » linux系统

Python在大部分领域都能胜任,为什么很多企业转向了Golang?

2021年10月14日5910百度已收录

先说结论:python的性能,语言编译特性,代码可阅读性在一定程度上制约了python在企业级开发中会逐渐落后于golang

先从python角度表述:

1.个人认为python是一个动态语言,它不能在编译期间,找出潜在的语法问题,语言在运行时校验参数的属性和合法性,虽然方便了开发,但是却牺牲了很多性能,并且在调试阶段,也会存在各种各样的问题

2.python因为历史包袱原因,有python2和python3,对于一个新手来说,这也是一个潜在的学习门槛,因为有些历史项目是使用python2开发的,如果该项目你需要维护,也需要你去学习和适配python2的语法

3.python更大程度上来说属于一种脚本语言,它的优点就是开发速度快,能够快速上线,带来的缺点也是显而易见的,代码难以维护,特别是企业级项目,一个业务模块的开发100个人可能有50种不同的写法,虽然最后运行结果是一样的,但是后期如果有其他人来维护你的代码,那么对于维护者将是一个非常痛苦的事情,甚至重构的成本会低于你修改的成本,当然,如果你的公司有python开发的一些规范,或者一些示例模块工程,可能能够很大程度上避免上述的情况

4.python的企业级工程化的轮子相对于其他的语言比较少,我并不是说python开源的框架少,python顶级开源框架肯定很多,我只是说企业级业务开发框架比较少

再从golang的角度表述

1.golang是一门年龄相对小的年轻语言,未来活力无限,目前属于比较火的语言,历史包袱也比较少,没有版本不兼容,语法不兼容的明显问题,并且一些新的特性正在慢慢加入到golang最新的版本中

2.golang是一门静态语言,能在编译过程中,找出你的语法错误,方便你的开发

3.golang的性能,golang的性能是超过python和java,并且无限接近c和c++,并且拥有垃圾自动回收机制,也这是它的新语言亮点

4.从语言特性来说,golang的继承虽然不需要从纸面上用关键字来说明,但是却能够很好的把这个特性完美地表现出来,这样的一个特性,能够更大程度上的激活golang的活力,能够编写出很多易于维护的优美的代码,这样企业开发成本和维护成本也会大大降低

5.golang对docker和k8s的同语言的天然亲和性,能够更加方便项目云端部署,降低企业的运维成本和机器成本

评论列表暂无评论
发表评论
微信