网站首页 > 技术文章 正文
万物有开始就有结束。而如今 PHP 也步入了暮年。在这个时代,长盛不衰的唯一方法就是无可取代。
一门技术如非必不可少,就会被慢慢遗忘。PHP不仅可有可无,而且会加剧开发工作的复杂性。与之相比,许多现代语言的表现更为出众。
这些现代语言没有 PHP 的局限性。虽然PHP在不断更新,但未达到领先水平。为什么 PHP 会走上末路?或许有以下几点原因。
01死亡逼近
在为项目选择技术之前,首先我们需要做一件重要的事情:分析该技术的发展趋势。
如果你的目标是在未来几年中加速项目的发展,那么分析技术的发展趋势会非常有价值。长期项目需要选择正确的技术。你不希望有朝一日被困在一个逐步衰亡且缺乏支持的技术中。下图来自 Google 的趋势分析,为我们展示了过去十多年间 PHP 的发展。
我们可以看出,在过去的十年中,PHP 一直在走下坡路,如今几乎已跌至谷底。下面是来自TIOBE 指数的一个趋势图。
很明显 PHP 日渐式微。如今还有一些流行的基础设施在使用 PHP,这是因为这些基础设施都是在 PHP 发展的高峰期或上升期(2001年~2010年)构建的。WordPress 和维基百科就是典型的例子。
如果想构建复杂的系统,我们就不能依赖这门语言。更糟糕的是,我们更不能依赖一门正在走向衰亡的语言,即便我们的前辈在PHP崛起和顶峰时期选择了这门语言。
就 2022 年的形式来看,为项目选择 PHP 不再是一个明智之举,除非是暂时的。如果你非常注重项目的发展,则应该选择一种现代语言。一种正在上升或达到顶峰期的语言。这不仅可以保证将来的安全,而且也可以保证项目的持续生存和增长。
02Node.js 正在慢慢取代 PHP
新一代的程序员不会选择学习PHP语言,他们会选择 node.js。而这些人将主宰未来的网络。
他们了解使用两种语言的难度,而且也清楚PHP的缺点。他们知道掌握 PHP并不会给自己带来最大价值。
招聘人员也意识到了这一点。他们中的许多人正在慢慢地用 node.js 或其他替代方案替换 PHP。
转换领域(比如以前是游戏开发人员,如今想涉足 Web 开发)的资深程序员也不会选择学习PHP。他们中的大多数人都选择了 Node.js。
下面这张图比较了 PHP 与 Node.js、Django 等其他后端框架。
Django 还很年轻,未来可期。我知道它还没有完全发展成熟。但未来它可能会成为一头野兽。它的发展并不会减弱。
Node.js 获得的关注度高于 Django。显然,很多人都很喜欢它。但相似的是,这两个框架都在增长。未来它们都会变得非常强大。
这些框架以及 Rust、Go 等其他现代语言都可以说比PHP更好。
它们消灭了 PHP 的缺点,拥有系统的架构,而且组织非常有条理,因此比 PHP 更可靠。
03技术栈已改变
世界正在慢慢向 Web 3.0 迈进。未来 Web 将由云解决方案和机器学习主导。
目前,我们仍处于 Web 2.0,而 Django 和 Node.js 等语言非常适合这种过渡。
Django 特别擅长基于 AI 的 Web 应用程序、分析应用程序、实时应用程序修改,并且具有高度可扩展性。
Node.js 的开发效率非常高,而且非常适合实时发送数据,不仅速度非常快,而且还可以保证服务器的持续回调。
这些领域非常关键,却也是PHP的欠缺。因此,Django、Node.js、Rust 和其他现代技术更适合未来的发展。
此外,技术栈也发生了变化。曾几何时LAMP是最流行的技术栈。使用超过了10年,因为这个技术栈非常简单、可靠且稳定,因此深受开发人员的喜爱。
而如今我们有 MEAN、MERN、MEVN 以及由 AWS Lambda 和谷歌云等云平台提供支持的无服务器栈。很明显MERN 以及其他亲属分支已经打败了LAMP。
此外,我们还有其他技术,如 Ruby on Rails 和 Flutter,可用于创建跨平台应用程序。当开发速度成为项目的首要因素时,就可以考虑这些技术栈。
04PHP无法融入移动电话和平板电脑等便携式设备的未来
如今 Web 的已由手机和平板电脑主导,无论走到哪里,我们都会随身携带手机。
目前大部分网络流量皆来自移动设备。普通人花费在手机上的时间比在任何其他设备上都要多。
各大公司的服务纷纷从 Web 转移到了移动应用程序。这导致眼下以及将来势必涌现大量大规模的迁移。
简而言之,这对移动应用程序开发人员来说是个好消息。
然而,坏消息是 PHP 不是此次迁移的一部分。PHP 不适合移动应用程序。而 PHP 的建立初衷也不在于此。它是一种面向 Web 服务器端的编程语言。
另一方面,Django 和 Node.js则非常适合移动应用程序。未来,两者都有可能在在移动应用中占据很大一块份额。Django 已朝着这个方向迈出了一大步:它为世界上访问量排名第六的网站 Instagram 提供了支持。
Java、Python才是编程语言界的扛把子!
此文转自优极限&乐字节
猜你喜欢
- 2025-05-02 从 PHP5 到 PHP9:一次低调却坚定的进化之路
- 2025-05-02 五面一线大厂PHP程序员总结,成功拿到百度的offer
- 2025-05-02 php可以做手机app吗(php可以开发安卓app吗)
- 2025-05-02 互联网行业哪个职位比较有前途?(互联网行业哪个职位工资高)
- 2025-05-02 NodeJs(一)我对NodeJs的认知(nodejs 用途)
- 2025-05-02 vue怎么和后端php配合(vue怎么和后端对接计算案例)
- 2025-05-02 我采访了一位 Pornhub 工程师,聊了这些纯纯的话题
- 2025-05-02 怎么理解php(怎么理解photoshop)
- 2024-09-11 前后端开发
- 2024-09-11 简单描述PHP发展历程
你 发表评论:
欢迎- 07-10Oracle 与 Google Cloud 携手大幅扩展多云服务
- 07-10分享收藏的 oracle 11.2.0.4各平台的下载地址
- 07-10Oracle 和 Microsoft 推出 Oracle Exadata 数据库服务
- 07-10Oracle Database@Azure 推进到南美等新区域并增加了新服务
- 07-10Oracle宣布推出 Oracle Database@AWS 的有限预览版
- 07-10Oracle与Nextcloud合作,推出主权云上的安全协作平台
- 07-10NodeRED魔改版连接MsSql、PostgreSQL、MySQL、OracleDB存储无忧
- 07-10对于企业数据云备份,“多备份”承诺的是成本更低,管理更高效#36氪开放日深圳站#
- 600℃几个Oracle空值处理函数 oracle处理null值的函数
- 592℃Oracle分析函数之Lag和Lead()使用
- 580℃0497-如何将Kerberos的CDH6.1从Oracle JDK 1.8迁移至OpenJDK 1.8
- 576℃Oracle数据库的单、多行函数 oracle执行多个sql语句
- 572℃Oracle 12c PDB迁移(一) oracle迁移到oceanbase
- 565℃【数据统计分析】详解Oracle分组函数之CUBE
- 551℃最佳实践 | 提效 47 倍,制造业生产 Oracle 迁移替换
- 546℃Oracle有哪些常见的函数? oracle中常用的函数
- 最近发表
-
- Oracle 与 Google Cloud 携手大幅扩展多云服务
- 分享收藏的 oracle 11.2.0.4各平台的下载地址
- Oracle 和 Microsoft 推出 Oracle Exadata 数据库服务
- Oracle Database@Azure 推进到南美等新区域并增加了新服务
- Oracle宣布推出 Oracle Database@AWS 的有限预览版
- Oracle与Nextcloud合作,推出主权云上的安全协作平台
- NodeRED魔改版连接MsSql、PostgreSQL、MySQL、OracleDB存储无忧
- 对于企业数据云备份,“多备份”承诺的是成本更低,管理更高效#36氪开放日深圳站#
- 解读丨《归档文件整理规则》— 电子文件元数据存储
- Data Guard跳归档恢复的实践(dataguard failover)
- 标签列表
-
- 前端设计模式 (75)
- 前端性能优化 (51)
- 前端模板 (66)
- 前端跨域 (52)
- 前端缓存 (63)
- 前端aes加密 (58)
- 前端脚手架 (56)
- 前端md5加密 (54)
- 前端路由 (61)
- 前端数组 (73)
- 前端js面试题 (50)
- 前端定时器 (59)
- 前端获取当前时间 (50)
- Oracle RAC (76)
- oracle恢复 (77)
- oracle 删除表 (52)
- oracle 用户名 (80)
- oracle 工具 (55)
- oracle 内存 (55)
- oracle 导出表 (62)
- oracle约束 (54)
- oracle 中文 (51)
- oracle链接 (54)
- oracle的函数 (57)
- 前端调试 (52)
本文暂时没有评论,来添加一个吧(●'◡'●)