产品参数 | |
---|---|
产品价格 | 电议 |
发货期限 | 电议 |
供货总量 | 电议 |
运费说明 | 电议 |
品牌 | 水智慧流体设备有限公司 |
规格型号 | 根据客户需求 |
用途 | 广泛 |
举个例子,我们看一下WebSockets:必须在Ratchet、Swoole、Amp和React中作出选择。这意味着,针对关键性功能,作为开发人员,我们不但要确保遵守程序包的相关文档,保证程序包的可维护性,还要关注PHP的版本更新情况,才能保证不出问题。我可以想象,PHP8出现时,要在新版本上稳定下来,需要花费数周乃至数月的时间。
Swoole的案例是可以再讨论的。目前开发者可能不太热衷于使用这个麻烦缠身的软件,尤其是考虑到语言障碍的问题,但如果想要进一步研究的话,可以点击这里查看开源代码。
虽然近来,人们的关注点有些偏移向语言本身添加某些helper和命令,但这些helper方法的混乱也是多年来未曾解决的问题:ucfirst(), strtolower(), str_replace()…我们为什么不能在使用统一命名上达成一致?为什么直到今日,仍然没有人能从数组中提取一些键?
回到重点,不要误会我反对使用第三方程序包,但我希望负责PHP本身的人员比随机的公司拥有更多的可维护性。
而且别让我用台式机或者移动应用程序。PHP是一种面向Web的语言,大多数开发者都默认这一点,但即便Node.JS被逐出了市场,PHP也不会有希望成为相应生态系统中的替代品。
具体到Node.JS的案例中,很大可能JavaScript编写的部分服务器代码模块是可以重用在之前的移动或桌面应用中的。对公司所有者而言,这意味着公司不必再雇佣另一个有其他语言经验的开发者了,除非收益大过成本。
恐怕这就是我们将要面临的局面:
应用一开始用PHP代码库开发;
管理者索要新功能;
某个其他语言会填充PHP不提供的功能区;
终开发者要使用两个生态系统。
同样,每种语言都有其特色和要警惕的问题,但我始终认为,一种语言要有功用性,能够让使用者完成自己的任务,而不是让人吃亏如果不是为了PHP社区的利益,很难设想PHP会达成以上要求。
更干净的配置(如php.ini)
软件包管理(后由Composer修复)
这些新功能除了composer,全都不包括在PHP的核心功能中,甚至宣传和计划中都不涵盖。基本上,官方是让PHP社区自行决断要自己做这些功能,还是干脆放弃了事。
你可能会说,这些功能并非各个项目必需的,其可用性要取决于具体情况,这话没错,但要实现上述功能,我们必须要选择是用非官方的程序包,还是自己做一个。