PHP在最近一年在编程语言排行榜上下滑的原因是什么
主要从两个方面发表一下个人看法:
行业变迁
最近两年,我们耳熟能详的技术热词比如:云计算、machine learning、TensorFlow、AI……,基本与PHP都没太大的关系,再比如:(自然语言处理)NLP、(物联网)IoT、big data、区块链(blockchain)……,也基本和PHP没太大的关系;难道说PHP技术不行了?那倒也不是,其根本原因在于技术发展日新月异,开发语言也愈加细分,golang主要用于云计算、Python主要用于神经网络与深度学习、大数据与数据可视化分析有R语言,反观PHP,似乎除了web、及部分APP后端开发,其他专业技术领域有点力不从心,尽管它也在一直寻求新的爆发点。
语言特性
在web开发不甚成熟的时代,PHP以其“开发周期短”、“技术门槛低”的优势吸引了一大批开发人员加入,虽然项目可以很快推上线,但由于“弱类型解释语言”的基因缺陷,在性能优化大行其道的今天,PHP需要补足这一先天缺陷(从PHP5~PHP7就可以看出),这也给很多其他开发语言趁势而上的机会,比如go语言。业务量暴增需要程序能适应更高的并发访问以及更低的延迟,go语言天生的并发编程语言特性就恰好解决这一痛点,我所参与的大部分项目都选择go语言进行数据的云同步。再来说说Python,同样是动态解释型语言,Python的技术应用场景相比PHP而言则多出不少,比如GUI程序开发、机器学习、数据抓取与分析……,一旦项目有大量数据抓取的需求,我的第一选择肯定会是Python,因为在同等开发周期内,Python的效率与执行效果是最优的;所以总的来看,性能不及golang纯粹,应用场景不如Python丰富,却也不能否定“PHP是最好的开发语言”。我一般的技术选型如下:web后端与轻量级APP后台任务用PHP,大数据量吞吐与并发数据传输用golang,大数据抓取与分析用Python,我一直认为“术业有专攻”,没有最好的语言,只有最合适的语言,如果能一枪放倒敌人就没必要与其拼刺刀。
在编程语言方面,排行榜下滑原因是因为移动互联网、大数据、物联网、人工智能等行业的发展,这里面很多不是PHP的强项,甚至根本不是WEB应用。简单来说,就是非WEB的编程越来越多了。但WEB编程,目前首选的还是PHP。