出品 | CSDN(ID:CSDNnews)
在盛行文化的冲击下,大概很多人都不赞许本文表达的不雅观点,但我毅然决定再一次逆流而上。我认为,虽然 PHP 百般受轻视,但这门编程措辞的盛行度比以往任何时候都高!
为什么?怎么 PHP 还没去世吗?不是有那么多比 PHP 更精良的编程措辞吗?
不,并没有。如果真的有这样的措辞的话,它们早就带头干掉 PHP 了。我们须要重新核阅什么才是“更好”的编程措辞。
为什么 PHP 还没去世?如果你表示不解,那可能是由于你并不理解编程、程序员、市场和民主。实际上,这与代码、函数或语法没有任何关系。
鞭笞 PHP 成为了一种时尚
如今,为了在编程的圈子内走红,你就必须鞭笞与“主流文化”吹捧的编程措辞有竞争关系的措辞。这与措辞本身的功能无关,只是由于文化,就有点像宗教。
程序员是一群固执己见的人,非常傲慢,但我们必须战胜这些缺陷。我们喜好鞭笞我们不喜好和不该用的编程措辞。你会创造有些工程师说 Java 很糟糕,有些说 C# 很糟糕,而有些则说 Go 很糟糕。至于详细是什么措辞根本不主要,总会有人批评。
此外,还有一种更深的鄙视,最近这段日子 PHP 和 Python 之间默默地展开了一场较劲,彷佛学术界正在策划一场阴谋:干掉 PHP,让 Python 取而代之。
如今,你乃至会创造在一些维基百科的页面中,LAMP 技能栈中的 P 居然神奇地变成了 Python。20 年前,在我利用LAMP 的时候,这几个字母指代的可是 Linux、Apache、MySQL 和 PHP,当时的 P 指的可是 PHP,而不是 Python,乃至不是Perl。我并不是说这些定义不能改变。大概是我的狐疑太重了?不足原谅?还说 Python 霸占了 PHP 的位置?
对付我们大多数人来说,大学里学习了 Python,还有其他一些实际事情中可能永久也用不到的小众措辞。虽然我们的老师或其他菜鸟会说:“PHP 很糟糕”,但大概他们中的大多数人从未编写过一行 PHP 代码。
事实上,你乃至可能会疑惑是否真的有人从事专业的 PHP 编程事情。普通人对 PHP 的不屑一顾实际上并不合逻辑,而且也不是发自内心的。只不过,与朋友在咖啡馆谈天的时候,我们习气于一起鄙视某些明星、网红或者 PHP。
此外,还有一些编程纯粹主义者,他们乐意摧残浪费蹂躏宝贵的韶光吹毛求疵,谈论 PHP 如何糟糕。大多数这样的辩论都会环绕个人的偏好,或者他们不喜好的细微差别,为的是宣扬自己喜好的编程措辞,并希望这些措辞一统天下!
他们的抱怨没完没了:
PHP 的类型很弱,而且还有很多糟糕的代码。
Javascript 和 Node.js 又何尝不是呢?你不是一样在用?
PHP 的函数太多了。
有些人就连这都要抱怨,是由于太方便了吗?
函数名不一致。
当一种措辞真正做到民主化,而不是由哪个“专家高手”凭一己之力一手编写而成,就会涌现这样的问题。
可见,他们对 PHP 的批评常日都源于个人偏好,或者只是鸡蛋里挑骨头。假如这么说的话,我们也可以针对Python、C#、Java、Go、Javascript 或其他任何措辞挑出相同的毛病。作为程序员,我们喜好抱怨,满腹牢骚。
但作为程序员,我们喜好鞭笞 PHP 的真正缘故原由是,我们固有的狂妄自大和赤裸裸地妒忌。
PHP更随意马虎利用
PHP出身于 90 年代中期,乃至在我们中的一些人出生之前。我从 2000 年初开始利用 PHP,当时的版本正在从 4 向 5 过渡,后来我开始利用 CodeIgniter、ZendFramework,在自己的框架中编写运用。
我认为 PHP 长盛不衰的缘故原由,也是这门措辞不会消亡的紧张缘故原由是,它不仅嵌入到了各种新旧运用程序中,也嵌入到了新老程序员的脑海中,他们利用 PHP 已经长达几十年了。我们不会离世,我们编写的商业代码也不会消逝。
有趣的是,Python 出身于 1991 年,那时PHP 还没有涌现。虽然 Python 的生命更长,但它的采取未能达到 PHP 如今的水平。
为什么?
在我个人看来,与 PHP 比较,Python 利用起来很痛楚。这个问题在 Python 3 中有所缓解,但在 15 年前,Python 还没有各种开箱即用的、“花里胡哨”的函数,远比不上 PHP。你必须手动安装很多功能。
此外,我创造 Pyhon 还有一个问题,而且这个问题一贯延续至今,那便是空格。我讨厌利用空格作为分隔符的语法。我希望按照自己喜好的办法分隔代码,而且不肯望编程措辞碍手碍脚。无论你再怎么说得天花乱坠,代码是我的,我想怎么写就怎么写,谁也管不着。
Python一贯吹嘘自己的空格语法“易于阅读”,但这不过是营销的空话罢了。我个人认为,Python 利用了最糟糕的语法,还不自知。
这种自以为是的语法很随意马虎引入缺点。最初,在 IDE 能够所有这些问题之前,我相信没有程序员喜好这种语法。至少我个人就不喜好。这也是几十年来该措辞的采取率一贯很低迷的部分缘故原由。实在便是由于这种语法对用户不足友好。
此外,我认为从前间人们并不知道 Python 的存在。它作为一种脚本措辞嵌入到 Linux 发行版中,这便是它的紧张用场。没有人会跑出来大喊道:“我可以用 Python 构建网站了!
”
事实上,虽然我们可以用 Python 做网站,但精良的工程师都知道 Python 的强项并不是做网站。除了我个人对语法的偏好之外,Python 在功能上是一门非常强大的措辞,特殊是它的库可以用在数据科学或其他侧重于数学打算的地方,这些情形下精度是必须知足的哀求。
PHP是任何人都可以利用的措辞
我赞许,在过去的 15 年间,Python 推出了许多更新,并超越了 PHP,只不过这些更新晚了十年。
2008年发布的 Python 3 实际上冲破了向后兼容性。Python 2 的代码无法与 Python 3 一起运行,你须要做一定的修正。但是,如果有一百万行代码须要更新,那就没戏了,尤其是在企业环境中。
公正地说,PHP 7 和 8 也毁坏了一些 PHP5 的代码(没有 PHP 6)。我是ZendFramework 1 社区的一员,该社区帮忙更新了运行在 PHP 7 和 8 之上的框架。幸运的是,在将 ZF1 升级到 PHP 7 和 8 时,我的企业遗留代码险些没有破坏。以是,大部分 PHP 5.6 代码仍旧可以向后兼容。
但大概真正帮助 PHP 一炮而红的事宜是,一家成立于 2005 年的名为 Automattic 的小型初创公司。
WordPress刚开始的时候很不起眼,但它不仅改变了开拓职员,而且也改变了普通人发布网站的办法。
到目前为止,最好的发布选择是 Drupal、Joomla 或其他一些BBS 软件。但这些软件利用起来都很痛楚,由于编写这些软件的人的思考办法更靠近程序员,而不是普通用户。
如果 WordPress 是用 Python 编写的,那么可能 PHP 真的会走下坡路。但我敢说,Python 会阻碍 WordPress 的迅速崛起,乃至完备阻挡。
采取以及扩展贡献者的支持将关系到措辞或运用程序在开源市场中的生存。而易用性是刺激采取率迅速上涨的关键。
作为一名受过大学教诲的软件工程师,无论你如何诋毁 PHP,都无法否认 PHP 不仅受到了专业软件工程师的青睐,而且就连兼职职员、家庭主妇、平面设计师、公司经理、企业家和小学生都能利用打算机编写网页。
可以说 PHP 是信息时期的 BASIC(措辞)。
作为一名软件工程师,你的思考办法一定和软件工程师一样,而不是那些只想利用有限的韶光和资源为自己的小企业建立一个网站的人。
而 WordPress 和 PHP 改变了这统统。
WordPress本身很随意马虎利用,但功能很有限。普通人可以利用 WordPress 的插件架构,编写很小的 PHP 代码片段,他们不须要重写全体类或成为软件工程师来完成这些事情。
数以百万计的业余程序员通过 WordPress 在网络上与其他人分享他们的成功,并发展了这个平台。
普通易懂的 PHP 措辞让普通人也可以编写有效的代码。大略、没有分外哀求、弱类型、不须要编译,就可以运行。
PHP与互联网
15年后的本日,PHP 为 78% 的 Web 供应支持。仅 WordPress 就占所有网站的近 40%,并拥有近 2/3 的 CMS 市场份额!
关键是Python 希望霸占这些市场的 10%!
只管 Python 纯粹主义者对 PHP 充满仇恨,但 Python 仅占 Web 的不到 1.5%。
有些企业客户的招聘职员曾联系过我,他们希望删除所有的 Python Web 代码,并换成 PHP。你可能会感到很震荡,但实在这种情形该当更多。为什么?由于诚笃说,Web 不是 Python 的主沙场,Python的紧张用户是数据科学和其他专家,而且有这方面履历的人才供不应求。
常日公司须要灵巧。当须要扩大团队或有人离职时,他们不可能花费数周或数月来探求新的 Python 职员。而且 Python 工程师也很贵。
对付小型企业来说,探求 PHP 程序员要随意马虎得多,而且如有必要乃至可以进行培训。关键是你可以找到拥有数十年履历的高等 PHP 架构师,比找相应的 Python 职员要随意马虎得多。
关键是,如果你在一家公司事情,如果没有正当情由就想用 Python 编写网页或中间件,那么就会遭到责备。由于公司会为此背负上 Python 代码,将来他们须要花费巨额资金来删除这些代码,并用精确的工具更换。
运用程序架构师的紧张事情是,针对企业的实际情形,选择最有效的技能。不能由于网上非常盛行,或者是学校里教了某种措辞,你就根据自己的喜好来选择。
我建议完备用 Python 编写 SaaS 运用程序的情形非常少,考虑到 Python 的 Web市场份额,彷佛大多数运用程序架构师都会选择精确的措辞。他们会在 Python 最善于的领域选择 Python,并根据 PHP 的最大上风选择 PHP。
总结
作为工程师,我们都喜好利用自己熟习的措辞,而且我们喜好对自己不熟习的技能嗤之以鼻。
各个高校都在考试测验将 Python 作为通用的商业措辞。但实际上,Python 更适宜运行做事器、数据科学、处理大型繁芜数字,乃至加密货币的挖矿等。
而 PHP 是大众措辞,它已成为互联网事实上的措辞。
以是,如果你喜好,可以连续鞭笞 PHP,连续鄙视它。但无论若何,PHP 仍旧是迄今为止网络上利用最广泛的措辞,随着 WordPress 的持续飞速增长和 PHP 7 和 8 的新速率,这种地位在短期内不会改变。
参考链接:
https://beau-beauchamp.medium.com/php-is-killing-python-2be459364284
《新程序员003》正式上市,50余位技能专家共同创作,云原生和数字化的开拓者们的一本技能精选图书。内容既有发展趋势及方法论构造,华为、阿里、字节跳动、网易、快手、微软、亚马逊、英特尔、西门子、施耐德等30多家有名公司云原生和数字化一手实战履历!