2020 年 PHP 是否将会逐渐被取代?
Go 语言这几年国内发展迅猛,很多大厂也都在推广,php 本来天生为 web 而生的语言,nodejs 、python 、go 是否会一一蚕食 web 应用市场,作为 phper,那么后续的职业生涯将何去何从?
Go 语言这几年国内发展迅猛,很多大厂也都在推广,php 本来天生为 web 而生的语言,nodejs 、python 、go 是否会一一蚕食 web 应用市场,作为 phper,那么后续的职业生涯将何去何从?
你自己两年前已经回答过了。
另外,只会一种编程语言的人肯定首先被淘汰。
在一家三线互联网公司同时写 PHP 和 Go,Java NO.1 就不提了,说说我的看法
1 、语言 – Go 的面向对象很弱,没有泛型,类和对象写起来比较反人类(特指语法)
2 、性能 – Swoole 的性能在 CURD 场景下我亲测使用 hyperf 跑 WRK QPS 比 Go 高 1000
3 、依赖 – Composer 的第三方碾压 go mod 的依赖,以 websocket 举例,go 的大猩猩用得头痛
4 、爽感 – 写 Go 的强类型对比 PHP 真的超爽,再也不用担心被基础不好的同事埋坑
当然,还是那句话,不是 PHP 市场份额少了,而是企业壮大后 需要更优秀的人才,但很多 PHPer 跟不上脚步,依然固步自封思想守旧,才会埋怨 PHP 环境不好那里裁员。而在我看来,不管什么语言都要每日学习保持精进,而不是把学习的功夫放在了打嘴炮上。
目标群体不一样,php 的用户就是快速出原型的脚本语言而已,我写 php 的时候就想着半小时内把接口或者数据处理脚本写完,web 开发大部分都是只是 crud 业务,大家都是在拼 sql 吐 json 而已。
php 在脚本语言里面容错性是最好的(比如拼接字符串时 null 、false 可以当做空字符串用,做加减法时 null 、false 、空字符串又可以当做 0 用,true 做加法时可以当 1 用,虽然这对于某些人来说来说是噩梦),比如对于 js 、python 这些语言来说类型不一致就直接报错了,但 php 照样跑,而对于 php 用户来说却是 feature 。
同时如果碰到重要点的业务就加上参数定义时类型限制好了反正 php 语法上也支持类似强类型类型校验,还有 php 把 java 那套工程化的方式也抄了过来要工程化就按照 symfony 这个 php 届的事实标准搞就行了,代码可维护性也不是火葬场,phpdoc 配合 ide 每个 symbol 具体是什么类型全知道,完全不会眼瞎抓黑,现在 php 维护性最差也就和 golang 无脑 interface{},java 无脑 object 一样。
所以说为什么要折磨自己,这些用户永远不会消失还大有人在。
还有支持 jit 的 php8 年底出来,希望性能会有大提升。
现在的 php 不就是各种学习 orm 么.
按照现在这种形势,一门语言都学不好的人大概率会被淘汰……
从技术角度来看:除了 Java,很早就有 Ruby 和 Python 在和 PHP 竞争了,最近几年又有 Nodejs,不过结果呢? Web 服务端就是 Java 和 PHP 的天下,Ruby 、Python 、Nodejs 和 .NET 都不行,是因为语言本身的问题么?很明显不是,是因为生态。就 Web 开发而言,PHP 语言本身并没有那么不堪,只是 PHP 圈子的整体水平有待提高。
orm 本质上也是拼 sql,比如查询上不管是 builder 模式 orm,还是 mybatis xml 模式 orm,还是 dql 方言模式 orm,都是只是在花式拼写 sql 。
symfony 是基石,laravel 也是基于 symfony 的,没有淘汰一说。