机器之心编译
参与:黄小天、李亚洲
2017 年可谓是网页运用与 API 之年,开拓者不用每次重新发明轮子,而是利用脚手架和第三方库就能确保项目在几天内实时支配。
只管 RESTful API 和跨平台库已经使网页开拓随意马虎起来,但依然没有办理阻碍并隔分开发者、管理者和消费者的由来已久的问题:PHP vs. Python,到底该选哪种措辞?
PHP vs. Python ?
出于研发和项目预算的考虑,这一问题仍旧是一个主要的谈论点。然而,这个问题对付想要在网页开拓中做大的初学者来说也尤其主要。PHP 和 Python 是当今最为盛行的网页开拓措辞,编写了互联网之中绝大多数网站。
比较于履历丰富的开拓职员,初学者的需求相称不同。老练的开拓职员学起新措辞来险些绝不费力。与之相反,初学者则须要渡过两个难关:他们不得不理解编程构造并学习实现它们;也不得不节制对初学者毫无意义的句法。
一个干系的问题是开拓老手的偏见。与 PHP 开拓职员交谈,他们会说没有比 PHP 更好的措辞。与 Python 开拓职员交谈,情形也是一样。常日来讲,很少有开拓职员会夸赞其不用的措辞。
因此,本文不会提及 PHP 和 Python 各自的优缺陷,而是磋商初学者首次选择措辞时所要考虑的三个问题。余文将环绕着 PHP 和 Python 集中磋商这 3 个问题。
盛行热度
毫无疑问 PHP 和 Python 都很盛行。纵然 PHP 和 Python 并不支持某个项目,某些项目经理和客户依然优先考虑利用它们。PHP 更因此压倒性的上风主导互联网市场 80% 的份额。
一些著名网站比如维基百科、Flickr、Tumblr、雅虎都由 Python 编写而成。而此后,社交巨子 Facebook 开始转向 PHP 框架,它可以并入 Facebook 平台和 APP 开拓所需的统统功能。
当谷歌利用 Python 编写其一些有名项目之后,Python 奠定了其盛行地位。随之 Python 逐渐盛行起来,现在很多巨子公司诸如 YouTube、Reddit、Pinterest、Instagram 和 Spotify 都(部分或完备地)用其编写产品平台。
因此,在盛行热度方面,PHP 与 Python 之间难分伯仲。每一天这两种措辞都在编写着大量新项目。
可用框架和 CMS
一个框架是由社区贡献和掩护的代码编写,它许可开拓者快速上手运用而无须从头开始。范例框架包含数百个功能,开拓者可以调用它们从而为运用添加详细功能而无须重新发明轮子。
PHP 供应了大量框架,开拓者可以用它们创建通用和行业详细运用。PHP 框架比如 Laravel 和 Symfony 编写了数百万人利用的盛行运用。PHP 开拓者拥有由激情亲切的社区职员掩护的成熟框架的上风。
Python 确实供应了像 PHP 框架那样的选择。虽然用场广泛且强大,但 Python 框架的选项比较于 PHP 还是有限。Django 和 Flask 便是用户构建网页运用时的两个分外选择。Python 框架数量有所增长,这是由于它逐渐成为主流项目的措辞选择。
CMS 的内容管理系统是一个软件平台,为项目供应了极为灵巧的根本。无论是大略的博客、电子商务店还是公司门户,CMS 能供应综合的办理方案,担保开拓者和终端用户能够专注于商业案例,而非从头开始建立平台。
天下上最盛行的 CMS、WordPress 都是 PHP 建立的。同样,天下上两大开源电子商务平台 Magento 和 WooCommerce 都是用 PHP 建立的。其余,Python 构建了有限的几个 Django 支持的 CMS。
在分外情形下,PHP 有明显的上风,由于它拥有每个人所须要的一些东西。在许多情形下,PHP 在框架和 CMS 上供应更多、更通用的选择以匹配项目哀求。
学习曲线
这是此篇文章的紧张条件。学习曲线定义了节制特定措辞的难易程度。在编程措辞中,学习曲线险些趋于流畅,然后利用工具将设计转变为功能性代码。
在此,Python 比较 PHP 稍有上风。对新手而言,Python 代码更易读,也因此易于理解。PHP 一贯都比较难,不受新手喜好。但也由于规则困难,也很少有错。
在格式上 Python 容错度很高,代码不会由于一些小缺点而崩溃。因此对初学者来说很有勉励性。这也是为什么许多学校优先选择 Python 作为编程入门措辞。
PHP 社区也在只管即便使得该措辞变得对初学者友好。通过课程与教程,PHP 专家正在让它变得和 Python 一样易于理解。
结语
选择首门编程措辞是最困难的决定之一,PHP 和 Python 都值得我们关注。两种措辞都供应了许多学习机会,包括用户友好的语法检讨工具,使学习过程变得随意马虎并得到踏实的措辞根本。
我建议初学者两个措辞都考试测验下,然后根据个人目标、所在家被选择一个。虽然 Python 最易节制,但 PHP 有更好的事情前景和技能资源。