Java,Python还是Go
年纪大了,想学的东西却越来越多,可能越有中年危机了吧。作为一名8年抗战的phper,历经过他的近鼎盛期,也目睹了他的衰败期。PHP做为曾经最好的语言,现在多少有点尴尬。
我们上家公司技术团队102个人,整个PHP部门在大前端下的冲击下被撤掉,最终PHP专职人员为0。从目前培训机构的课程来看,PHP工程师的课程也已经拓展为全栈工程师课程,整个大环境着实大不如前。
不过语言毕竟只是个工具,语言之间也有一脉相通之处,各取所需就好。我从来不参与语言之争,因为不值当自己也不够格,不过学个语言也能吵出优越感来,不得不说也是件可悲的事情。
从C到汇编,到PHP再到JAVA,陆陆续续也接触过不少语种了,也考虑过一些出路的问题。虽说牛逼的PHP单靠一门功夫就能赚得盆满钵盈,不过对于大多数人来说,还是很难企及的。
于是想着在离开北京之前,多学一点东西,尤其是能学点做自己产品的东西最好。对于一个PHPer或者初学者而言,JAVA,Python还是Go,这倒是一个问题。
先来看几个参数,感受一下这几个语言在当前互联网中的行情吧:
一、TIOBE排行榜
TIOBE排行榜是根据互联网上有经验的程序员、课程和第三方厂商的数量,并使用搜索引擎(如Google、Bing、Yahoo!)以及Wikipedia、Amazon、YouTube统计出排名数据,反映出某个编程语言的热门程度。
TIOBE可以说是最重要也是比较准确的一个排行榜,主要包含以下两个重要排名:
1. 指数榜
这个是TIOBE最主要也是编程行业中最重要的一个排名榜,它衡量目前各个语言的热度,下面是2019年7月的指数榜单
2. 年度语言榜
列出所有“年度最佳编程语言”奖获奖者的名人堂如下所示,该奖项授予一年内收视率上升最高的编程语言
二、GitHub流行度
GitHub是全球最大的开源软件开发与管理社区,每年GitHub都会推出“Octoverse”报告,其中列出了一些趋势,包罗其网站用户中最受欢迎的编程语言。
GitHub的“Octoverse”报告有很多有趣的数据,以下数据涞源2018年度报告:
- 开发者数目超过3100万
- 各国开发者排行,美国、中国、加拿大分列前三
- 在中国,春节期间代码提交较少
三、国内招聘行情
JAVA7347条 Python4386条 Go609条国内互联网行业使用相对较多的招聘网站为拉钩、智联、51Job和猎聘网,下面以北京地区51Job职位搜索量为例,看一下当前3个语言的市场需求情况。
以上为2019年8月5号的统计数据,从这几个排行指标我们可以发现,JAVA依然是工作需求中的霸主地位,其次Python已然成为了最流行的语言,Go虽然近几年大火,但相对而言还是偏小众一些。
我们在选一门编程语言的时候,需要思量的不仅仅是当前就业需求,还应该思量到行业前景和自我预期。只有明确了自己以后职业发展方向,选择对应语言才是明智之举。下面我们来看下这3个语言所对应的介绍和应用场景。
JAVA
Java具有分布式、健壮性、安全性、可移植性、多线程等特点 。Java可以编写桌面应用程序、Web应用程序、分布式系统和嵌入式系统应用程序等。Java相对好就业,如果你是想转行学一门语言,那Java可能是比较好的选择。
特点:
- 老牌开发语言,20多年来雄踞编程榜第1位
- 完善的技术栈,可靠稳定,服务器占比语言80%以上
- 全国新增岗位最多,市场需求度最大
关键词:稳定持久
、服务器NO1
、市场需求大
Python
在大数据和机器学习时代,Python作为一个广为使用的万能语言,受到了大家的追捧,很多的第三方库用Python来开发维护,特别是机器学习和深度学习领域,如果你想在这些领域有发展, Python无疑是更好选择。
特点:
- Python属于动态脚本语言,开发效率高、生态丰富
- 涉及后端开发、爬虫、人工智能、金融量化分析、大数据等众多领域
- Python含有优质文档、丰富的AI库、机器学习库、自然语言和文本处理库
关键词:爬虫
、人工智能
、自动化运维
、黑客
Go
随着BAT、今日头条、京东、抖音等大型互联网公司对Go语言的大范围应用,带动更多互联网企业采取技术跟随战略,Go语言发展前景一片大好。
鉴于Go语言的特点和设计初衷,Go语言作为面向服务端的解决方案,很适合处理日志、数据打包、虚拟机处理、文件分布式系统、区块链和云平台领域等。如果你以后职业发展定位于服务后端,那Go值得拥有。
特点:
- 区块链主流编程语言
- Go语言代码简易度接近Python,运行速度媲美C语言开发
- Go语言内置Goroutine协程调度机制,处理并发性较为强悍
关键词:高并发
、区块链
其实把技术问题转化为对未来市场发展的角度思考,或许更有启发。这么多年的职场生涯,给我最深的一个感受就是选择大于努力。职业规划非常重要,跟对了趋势,在风口很容易成为"飞起来的猪"。
以上分析了这么多,我选择Python的原因只有一句话: