在十大主流语言中,排名第一的就是Python,Python的适用范围偏向于Data Science,或者说是Machine Learning、AI等方面,它更倾向于和数据相关。如果你做的是DS的工作,Python刷题会和以后的工作联系比较紧密,而且Python是刷题语言之中代码量最少的一种语言,同时也是初学者入门最快的一种语言。
因为Python是解释性语言,它内置封装了很多的函数,在Java之中需要写十行二行的代码,那么在Python之中只需要一两行,调一下相关函数就可以搞定。
但是Python的缺点也是比较明显的 ,第一,Python的项目局限性。如果是初学者,很多人想自己做的Project和刷题语言保持一致,那么Python的项目一般是和DS相关比较多,一般是比较难找一些实战性项目写到简历上。
第二,就是不适用后续的OOD,System Design。北美SDE面试三大块Algorithm,OOD,System Design。Python的语言过于简单,虽然初学者上手很快 ,但是对应于OOD,System Design的思想的表达。而OOD,System Design是面试中必考的内容,其实对后续学习没有起到太多的铺垫作用。
最推荐:Java
Java的应用面,相对来说比较广,所有的网站,比如淘宝天猫的后端和市面上的很多应用软件,手机安卓系统都是Java。Java更偏向于应用层。所以以Java为核心的练手Project,是比较多而全的,而且很多项目可以在两周之内做完,并且出成果,在简历上可以马上写出来东西。
而且,以刷题的特性来论的话,Java也是比较中庸的一种语言,它不像Python的简单,也没有C++的复杂,而且对于面向对象的思想,也是能够有一个比较好的表达。上手的速度也比较快。
03、优势
1. 市场需求大,工作岗位多
在过去的十年里,计算机改变了人们的日常生活,市场上产生了大量的计算机相关岗位。除了互联网行业以外,计算机应用已经深入到各行各业中。随着5G技术、无人驾驶、人工智能的兴起,整个世界对CS人才的需求也只增不减。金融、房地产、物流等行业都在由传统的系统转型为更数字化、更易用的平台。计算机岗位需求只增不减。