首页 > 自考资讯 > 自考知识

垂死梦中惊坐起下一句,垂死病中惊坐起列强竟是我自己什么意思

头条共创 2024-07-05

对于古代语言来说,支撑未来技术的不正是时代潮流吗?

大约一年前,我发表了一篇题为“PHP 可能在未来十年内过时”的文章。我发布的文章摘要类似于《圣诞颂歌》,但它不是Ebenezer Scrooge(电影《圣诞颂歌》 中的商人角色),而是PHP。

此前,PHP 的问题没有得到解决,这使得其他语言更具吸引力。目前,PHP 缺乏当今Internet 所需的功能。即使在未来,PHP 也不会有任何有意义的功能。

请注意,我从未说过“你应该死”、“不要使用它”,甚至“现在放弃你的PHP 项目!”我只是说在2030 年之前这是没有意义的,我只是简单地解释一下原因。

鉴于PHP 庞大的用户群,指出PHP 缺点的文章可能会激怒一些爱好者。他们认为PHP 是完美的,只是因为它很方便,或者因为他们已经使用它十多年了。我的文章也不例外。不管怎样,我决定摆脱消极的阴云,多思考一下。

这不是我的问题,而是你的问题

首先,我对PHP或任何其他语言没有个人恩怨。我认为这是一个非常成熟的工具。作为一种解释性语言,它也非常有用,并且拥有一个生态系统,因此当我需要“昨天”的东西时,我经常使用它。

这也与代码质量无关。你不能仅仅因为一种语言的开发者没有“正确”地使用它(至少没有完全正确地使用它)而责怪它。无论你的福特或兰博基尼有多酷,如果你不爱护它,它都很难保养。

这也与世界上使用PHP 的人数无关。如果您选择了“最高用户群”,请立即开始将代码迁移到Javascript。这场比赛他们轻松获胜,所向无敌。

“重要公司是否在使用”——稍后讨论。 JavaScript 对于SpaceX 的任务来说已经是必不可少的了,因此在不危及宇航员生命的情况下使用它显然不是一种糟糕的语言。

直到现在,PHP 才变成一匹只会一招的小马。尽管该语言以其快速增长的网络开发而闻名,但官员们不愿采取进一步行动。其他语言已经得到了进一步的改进。这就是死亡的奥秘。

语言会“死”吗?

以古老的编程语言之一COBOL 为例。

几十年前,银行和保险公司背后的一些旧金融系统是用COBOL 编程的。全球许多金融机构仍在其大型机上使用COBOL 的主要原因有一个。这意味着COBOL 仍在工作。作为这一点的证据,大流行的爆发突然增加了COBOL 雇用的人数来维护这些古老的系统,而这些系统不断受到来自世界各地的攻击。

COBOL 并没有消亡,但这意味着什么?即使这意味着用一个简单的工具将火箭固定在砖块上,您仍然可以使基于COBOL 的软件满足当今的需求,例如网页,有一些工具可以帮助您。适应。必须有人编写和维护COBOL。一些公司为基于COBOL 的系统提供一些支持。

我们可以得出结论,不能排除编程语言。总有一个混蛋从中赚钱,也总有一个混蛋提供第三方支持来赚更多钱。这是一个双赢的局面。

在企业文化中,如果技术堆栈不会给公司带来“成本”,那就没关系。否则,亚马逊将放弃甲骨文并使用自己的AWS数据库。

如果它没有死,那怎么“淡出”呢?

COBOL 并没有消亡,它只是“淡出”。没有一个理智的人会使用COBOL 开始一个新项目,因为有更好的工具。这些工具高性能、可靠、易于编程并且具有有用的功能。当今软件中使用的其他有用技术,例如HTTP 协议、多线程和虚拟化,在COBOL 时代是不可用的。

当人们停止在新项目中使用某种语言时,多米诺骨牌效应就会开始。不再创建和维护该语言的工具。由于缺乏需求,该语言不再引入新功能,社区不再创建新的工具集,不再扩散到其他生态系统,并且出现在服务器端,例如Node.js。新程序员没有学习该语言,而已经学习该语言的程序员则转向“更绿的牧场”。

这也意味着公司不愿意对语言本身进行投资,包括雇用程序员。这种语言的开发人员比更丰富的语言更难找到,因此这种语言的开发人员应该得到更多的报酬。此时,该公司的选择是迁移到劳动力成本更低的新平台。

对于COBOL 来说也是如此,对于Visual Basic、ASP .Net、Pascal、Fortran、ActionScript、Objective C、Haskell、Ruby 和许多其他服务器端语言也是如此。它们完成了技术周期,并被更好的语言所取代,这些语言提供了更多的功能和工具集,或者消除了令人头疼的问题,就像PHP 在2000 年代中期为互联网所做的那样。如果Rust 成为Linux 内核开发的标准,C 和C++ 也可能会这样做。

与其他替代语言相比,PHP 的崛起很大程度上与WordPress 的首次出现以及PHP 在服务器世界中销售的容易有关。特别是需要编译成二进制文件的语言,这两者都是PHP 过去所缺乏的,尽管这些替代语言拥有更多的功能和更好的性能。由于Wordpress的兴起,各大媒体公司担心自己的作品会被“博主”扼杀,纷纷拥抱这一趋势,开始使用Wordpress来增加自己在互联网上的影响力。 WordPress 还为这些企业提供了VIP 模式。

由于云服务为其他编程语言提供了新平台,这种对PHP 的“硬锁”现在正在发生变化,但租用运行PHP 的服务器并在一天内开始使用它仍然是常见的情况。事实上,您现在可以轻松租用运行Node.JS 或AWS Lambda 的服务器。您不需要多年的培训即可使用云提供商或服务器服务。 Google 还提供了使用Google Cloud Platform 的教程。

尽管如此,PHP 仍然是少数可以支持网站开发的语言之一。随着越来越多的人参与进来,社区和利益相关者推出了以下工具:用于I/O 性能损失的Opcache、用于通用数据库层的PDO 以及更轻松地管理大型项目的Autoloader、用于依赖项部署的Composer、用于标准化代码规范的PSR、PHPUnit。测试、PECL 扩展等

现在,回到这个概念,淡出意味着替换。它的使用不但没有增长,反而停滞不前。唯一可能发生的事情是它会逐渐被其他解决方案取代。这不是一朝一夕的事情,而是经过多年的积累。

从公司的角度来看,改变技术堆栈需要大量资源,而且不会立即产生投资回报。迁移到新的技术堆栈成本高昂,不可能一天完成。更糟糕的是,一些工具,例如分析、调试甚至部署工具可能不存在,您将不得不从头开始。

这使得说服你的老板迁移你的“技术堆栈”变得困难。这些老板不是对你负责的老板,而是为了维持比前期更高的利润而投资的老板。改变已经有效的东西一般是不允许的,除非你能证明存在用旧的技术堆栈无法实现的新的“商业机会”,或者与其他新技术堆栈相比存在相对的损失。

锤子是可靠的。射钉枪更好。

让我们结合上下文了解W3Tech 对PHP 的看法。 PHP 仍然在互联网上占据主导地位,因为它被顶级网站(包括非美国平台)使用最多,但实际流量并未达到100%。换句话说,如果Facebook 使用PHP 脚本,并不意味着整个平台都基于PHP,而是基于公司本身。

Wordpress 仍然是事实上广泛使用的CMS,与WooCommerce 一起成为企业的首选。有些SaaS 产品提供相同的服务,但您可能不需要修复未损坏的部分。

a1be9f63c31d419184cec27d48563c4d~noop.image?_iz=58558&from=article.pc_detail&lk3s=953192f4&x-expires=1720768553&x-signature=ruy%2BNUbp4x1a%2FhHt44%2BvwymcXIg%3D

网站上使用的服务器端编程语言的百分比,由W3Techs.com 收集

对上述内容的警告:PHP 仍然是任何Web 项目都需要考虑的工具。 WordPress 是PHP 的顶峰。新网站继续使用PHP 创建。 PHP 满足了所有条件,但是对于一两个人来说创办一家互联网公司是完全正常的。

如今有许多Web 技术可用,包括WebRTC、WebSockets、QUIC、HTTP/3、WebAssembly、WebAuthn、渐进式Web 应用程序、机器学习、JSON Web 身份验证、gRPC 和服务器端事件。这些技术支持在线聊天系统、多媒体流、连续实时数据、新的身份验证机制等等。 PHP 很难或者不可能支持这些技术。例如,很难在不阻塞的情况下传输大文件。也不可能支持WebSocket。

Hack 是大型企业唯一的未来,因为他们首先可以花钱运行HHVM……

有很多工作要做,从一种语言转向多种语言,将服务推送给提供您所需功能的公司,例如让Mux 处理视频平台并让推送程序进行处理,这已成为常态。事件传播。有些人可能会说他们是为了便利而买单,而另一些人可能是因为他们的技术堆栈无法解决这些问题而买单。

另一方面,你也可以自己掌控一切。前端可以在PHP 上运行,也可以是基于JavaScript 或React、Angular 或Vue 等框架的单页应用程序(SPA)。后端可以在基于Rust、Go、F#、HHVM、Net Core、Node.js 或其他语言的应用程序中运行。由于您无法在PHP 中完成所有操作,因此开发地狱就开始了,事情很快就会变得不一致。你开始从依赖一个生态系统变成依赖多个生态系统。

很自然地看到PHP 项目与其他SaaS 和用Node.js、Python、Go 和Rust 编写的运行时相结合,添加了另一个代码库和应用程序来维护。这弊大于利,因为项目的每个部分都必须处理两个(或更多)部署场景。

能搞定的人有几个,但能搞定的人很少,而且价格也不便宜,所以一个人拿到合同的可能性很小。

“但是这个伟大的公司使用 PHP”

我听到的一个常见短语是“但是Facebook 使用PHP”,就好像它是一种蓬勃发展的网络技术一样。一家以PHP 起家的顶级公司透露,Hack 和HHVM——“现代化PHP,但耗尽内存”—— 是其下一步。

Facebook 迁移至Hack/HHVM,并自2014 年起一直运行。维基百科也在2014 年弃用了PHP,转而支持HHVM。 Etsy 也在2015 年从PHP 迁移到了Hack。被SalesForce 以277 亿美元收购的Slack 也在2020 年从PHP 迁移到了Hack。

此外,我还强调了“公司跟进”。黑客是未来吗?事实上,Hack 正是大型企业的未来,因为他们有资金运行HHVM 并且不想迁移90% 的代码。其余的非亿万富翁公司则受制于PHP 和廉价服务器。

任何拥有大量资金的公司,例如Facebook、Apple、Google 或Mozilla,都可以为了自己的利益而创建自己的语言。这是因为这些公司拥有实现这一目标的人才、人才和服务。无论好坏,我们都只是巧合。

拥有一种基本需求稳定的语言可以使其不断进步,即使这意味着做出不太好的决定。

它足够了,直到它不能

有时候,说“你不能用PHP 做到这一点”有点令人难过。尽管新的JIT 引擎很流行,但它们并不是与其他新兴语言结合的灵丹妙药。虽然性能曾经是PHP 的一个非常重要的问题,但它不再是唯一的问题。互联网已经发展,但PHP 却没有。

e7a0f6c4deae4276ade3806f931566be~noop.image?_iz=58558&from=article.pc_detail&lk3s=953192f4&x-expires=1720768553&x-signature=NFITCFkLYN8UsSPL%2F1xBiqRoM%2F4%3D

图片来源:Unsplash 上的Carl Heyerdahl

今天,网络只是一个起点。持续不断的冠状病毒病(COVID-19) 大流行向我们表明,我们需要能够响应不同类型数据不断变化的状态的系统。如今仅靠PHP 还不够,但到了那时,开发人员将拥有更好的工具。没有人在等待PHP 本身现代化,也没有公司愿意这样做。这就是所谓的进步。新工具取代旧工具。

当不足以显示具有基本交互性的网页时,就会出现问题。到那时,PHP 20 多年的历史就变得清晰起来,显示出它与当今技术和产品的需求是多么脱节。

我并不是唯一一个长期等待PHP 成为技术竞争对手的人。从业务逻辑的角度来看,PHP 非常有用,因为它的语法允许专业人员执行非常具有表现力的声明性操作,尤其是在“业务逻辑”部分,但它并不是万能的。

PHP 是现在,但不是未来。

我认为这些段落表明PHP 本质上仍然是王者。功能没有其他语言能像—— 一样提供如此多的便利和复杂性,同时吸引更多的关注。此外,还有WordPress 效果。

PHP 将如何过时?任何人只需点击几下即可创建自己的个人资料、商店、照片库、云存储、群聊等,无需托管、服务器或代码。

我个人认为,今天,随着SaaS和一键安装的盛行,它已经不仅仅是Wordpress这样的“杀手级应用”了。我们现在处于一个“杀手级生态系统”,其中的部件是用一种语言编写的,并带有自己的粘合剂。是Node.js 吗?难道TypeScript 被编译成二进制文件了吗?也许是Rust 的垃圾收集器?也许是一种全新的语言?

也许是 PHP 9?

有人想要对PHP 进行重大更改。除非Rogue Wave (Perforce) 内部发生一些变化以推动Zend Engine 在技术上向前发展,否则这是不可能的。他们可能正在尝试销售Zend 服务器。考虑到大公司往往会尽快放弃PHP 并在博客文章中嘲笑每个人,我认为他们并不成功。

PHP 明天不会消失。 PHP 仍然有效,从一开始就一直有MVP,并且不需要任何附加功能,因此很容易学习。但PHP 是现在,而不是未来,而且负责它的人并不真正关心。也许会出现一种新的语言,它提供了PHP 和其他语言最好的部分。 Hack 已经证明,企业PHP 中的代码重用有着巨大的市场。

当下一个重大事件袭击互联网时,PHP 将没有时间迎头赶上。

没有一种语言是完全消亡的。 PHP 并没有死,只是其他语言已经超越了它。诚然,它们还没有像PHP 那样经过严格的测试……但它们正在达到目标。

鉴于人类对未知事物天生的恐惧,我们很容易同情那些被告知尝试另一种工具的语言狂热分子的愤怒。当谈到走出舒适区并进入新事物时,情况确实如此。在这种情况下,您可能希望从PHP 等可靠的语言迁移到更适合您需求的另一种语言。没有人会因为“浪费”一周或一个月的时间学习和理解新的生态系统而死去。在最坏的情况下,你最终会学会不再去那里,就像你在错误的地方度假一样。

经过多年解决软件开发问题,我学会了走向(或奔向)技术视野,即使这意味着接受我曾经热爱的事情注定会失败,我知道事情(不是)是工作的一部分。

.待续。

版权声明:本文由今日头条转载,如有侵犯您的版权,请联系本站编辑删除。

猜你喜欢