PHP 在未来十年内可能会慢慢消失

PHP

自从Wordpress, Drupal, CakePHP, Laravel, Symfony等众多框架在构建一个web应用中开始发力的时候,就展示出了开发一个web应用是多么简单,预示着php迎来了第二春。网络虚拟空间开始使用PHP + MySQL + Apache技术栈,而它像星星之火可以燎原一样,每个人拥有一套web应用就十来分钟的事,比如构建一个博客,购物车,网络相册,你要的应有尽有。

开发人员乐于花时间去让php变得更好,除此之外他们还做了这些事:之前慢的版本就不用了,因为构建了一个好于之前任何版本的高性能php7,还有不少新特性,甚至php8有可能获得JIT引擎。

至此,我认为它会慢慢走向下坡直到完全淘汰,其他语言会在它离开后代替它的地位。The only major feature announced for PHP 8 is the JIT engine,无论是哪种提高CPU密集型性能场景的选项之中,都不会有这种选项,剩下的都像是一些小玩意不会给你现在的应用或者以后的应用带来改变。

高性能不是他的杀手锏,而且它还缺少了新特性。

一个漂亮的目标,但输了4/1

当 PHP 5 暴露其问题时,Ruby,Python,Node.JS 和 Go 开始受到关注:缓慢,依赖关系混乱,无功能。 Go 稍后出来了,但是无论如何,请看看您可以使用这些语言做什么:

-WebSockets
-非阻塞 IO
-承诺(也就是“在我做其他事情时执行此操作”)
-更好的数据流
-本机服务器实施
-桌面/移动应用程序的用法
-更干净的配置(您看过 php.ini 吗?)
-包管理(后来由 Composer 修复)

在这些新功能中,除 Composer 之外, 没有包含任何的 PHP 核心代码,甚至没有宣布或计划完全。基本上,他们离开社区来决定是自己动手做,还是彻底放弃他们的任何一个特性,这个无从得知。

您可能会说这些功能或特性并不是每个项目都必需的,并且它们的可用性将视具体情况而定,这是正确的,但是要实现上述功能,您必须决定使用非官方的程序包,或者构建自己的程序包。

让我们看一下 WebSockets 。您必须在 RatchetSwooleAmpReact。这意味着,对于使用关键任务功能,这些软件包背后的开发人员必须遵守文档和可维护性,同时还要注意 PHP 版本更新,以便他们不会破坏任何内容。我可以想象,当 PHP 8 出现时,要在新版本上稳定下来需要花费数周或数月的时间。

Swoole 的情况是可以讨论的。在现在这个时期,开发人员可能不太热衷于使用具有中国特色的软件,特别是考虑到语言障碍,但是 代码是开源的 如果你想查看或使用的话。

虽然最近一直在关注向语言本身添加一些帮助器和命令,但是很多年类都尚未解决助手函数混乱的问题:ucfirst()strtolower()str_replace()...我们不能同意使用内聚的命名约定吗?为什么直到今天仍然没有人可以从数组中提取一些键?

回到点上,不要误会使用第三方软件包,但我希望负责PHP本身的人员比随机公司拥有更多的可维护性。

而且不要让我开始使用 桌面移动应用程序。 PHP 是一种面向 Web 的语言,大多数开发人员都认为这是一种语言,但是即使 Node.JS 也被赶出了市场,也没有希望使 PHP 成为这些生态系统中的替代者的希望。

在 Node.JS 的特定情况下,很有可能会将已经用 JavaScript 编写的部分服务器代码模块重用到您的移动或桌面应用程序中。对于公司所有者而言,这意味着公司无需雇佣具有其他编程语言经验的开发者来开发其他平台的应用,除非收益高于成本。

恐怕这就是我们要得到的:

1.应用程序将从 PHP 代码库开始。
2.管理层将要求新功能。

  1. 某某语言将填充 PHP 不提供的功能。
    4.您最终将使用两个生态系统,而不是一个。

再说一次,每种语言都有自己的特性和说明,但是我觉得,一个开发人员不应该只会一门语言,而是用专注某个领域的语言去解决问题和实现业务,而不是有一种追捧一门语言的心态。如果不是出于 PHP 社区本身的善意,那么将很难假设你为后者。

未来趋势

事实是,到 PHP 8 发布时,它将带有 JIT编译器,但没有 PHP背后的一些核心开发人员 提出的特性。并且通过Rogue Weave 优先考虑 Zend Server 而不是继续推动 PHP 核心 Zend Engine 的开发,这样的功能将可能永远无法实现,并且在考虑这些时,Node.js 和 Go 等,已经有了更大的生态系统。

据我了解,JIT 编译器应允许使用纯 PHP 而不是 C++ 创建扩展,但性能损失较低,这可能会加速从当前提供的功能扩展语言功能,但同样,支持性/可维护性从语言开发者那里得到的 是保持语言相关性的必要条件,否则谁知道软件包维护者是否采用 AWOL 语言 就像 Predis 发生的那样 来开发和维护语言。

总结一下,缺乏特性会使 PHP 从相关领域中慢慢消失,而其余的功能和特性将会让 PHP 在 WEB 领域走的更加长远。

本文中的所有译文仅用于学习和交流目的,转载请务必注明文章译者、出处、和本文链接
我们的翻译工作遵照 CC 协议,如果我们的工作有侵犯到您的权益,请及时联系我们。

原文地址:https://medium.com/swlh/php-could-fade-a...

译文地址:https://learnku.com/php/t/39425

本文为协同翻译文章,如您发现瑕疵请点击「改进」按钮提交优化建议
讨论数量: 5

ASP这么多年了还是没消失

4年前 评论
tianlan 4年前

期待 PHP 扩展可以用 PHP 实现, 不再必须使用 C 扩展
如打包成 .phar

4年前 评论
nickneo 4年前

看完了全文,都不知道作者的依据是什么?

4年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!