专栏名称: OSC开源社区
OSChina 开源中国 官方微信账号
目录
相关文章推荐
码农翻身  ·  国外巨头们开始“抄”国产技术了! ·  昨天  
程序猿  ·  游戏爱好者 VS 程序员 ·  3 天前  
程序猿  ·  MongoDB拳打PostgreSQL,并发起挑战 ·  2 天前  
程序猿  ·  2024 互联网公司工作时长排行榜 ·  1 周前  
51好读  ›  专栏  ›  OSC开源社区

Python vs PHP vs Ruby —— 编程语言大对决

OSC开源社区  · 公众号  · 程序员  · 2017-02-23 08:21

正文

#点击图片,报名参加厦门、福州源创会#


编程语言种类繁多,每种语言都有它们的独特的优势。开发者在对编程语言的进行选择时往往很讲究。因此,这篇文章将从各个角度对 PHP、Ruby、Python 三种当前比较流行的语言的优势和劣势进行对比,希望你能从中受益。


在进入主题之前,我想分享一些数据,这是我刚学习 Web 开发时候看到的,虽然内容不够新,但能为三类语言的比较提供依据。


Python vs PHP vs Ruby


数据显示:

● 市场对 PHP 的需求很高

● PHP 的可用性低

● Python 易于学习和理解

● Python 运算快

● Ruby 较难学

● Ruby 的可用性高



哪种语言最“不安全”?


网站/应用程序的安全性主要取决于程序员,而不是编程语言。PHP 被普遍认为不安全,因为 PHP 的语法不像 Python 或 Ruby 的语法那么简单。我们知道,语法越复杂,可读性越低,错误发生的几率越大。因此,就这一点说,PHP 最容易出错。



三种语言的局限性


PHP:

● 由 C/C++ 和 Perl 衍生出更详尽的语法,带有 },$ 和 -> 等符号

● PHP 内置库的命名约定多种多样,很难记住

● 不适合开发桌面应用程序,难以维护

● PHP 是弱类型语言,它的隐式转换可能导致意想不到的错误

● PHP 是脚本语言,不面向对象


Python:

● Python 没有 'switch' 语句和 'do ... while' 构造

● 类和方法都没有 abstract 和 final 修饰符

● 数据库访问层方面有限制

● 在处理多处理器/多核心工作方面其实不是很好

● 运行速度慢


Ruby:

● 很难学会

● 缺少信息资源

● 相比其他编程语言,处理时间(CPU时间)比较长

● 开发和更新比较慢



各自的优势


PHP:

● 容易上手,尤其适合有 C++,C#,Java,JavaScript 等开发背景的开发者。

● 可以部署到大多数网站服务器上,如 Apache,Microsoft IIS,Netscape,个人网络服务器,iPlanet 服务器等。

● 适用于几乎每一种操作系统和平台

● 提供大量的可用扩展和源代码

● 可快速开发任何类型的 CMS

● 主要开发框架:Zend,Yii,Laravel,Codeigniter 等


Python:

● 简单易学,适合编程初学者学习

● 提供了快速原型和动态语义功能

● 面向对象编程驱动型

● 可在多个系统和平台上运行

● 主要开发框架:Django 和 Flask 等。


Ruby:

● 纯粹的 OOP(面向对象编程)

● 拥有一套整洁、简易的语法,让新开发人员很容易上手

● 用 Ruby 编写的可扩展程序很容易维护

● 超丰富的字符串和文本处理技术/方法

● Ruby 代码块比 Python 的 lambda 代码块更强大

● 能够用一套简单的 API 编写多线程的应用程序

● Ruby 基本框架是 Rails。



结语


总之,这三种语言各有各的利弊,总结一下就是:

● PHP 和 Python 更适合新手学习

● PHP 是用于编写 HTML 页面的最佳语言

● Python 是一种通用编程语言,可用于构建从 Web 应用程序、爬虫程序、守护进程到桌面 GUI 应 用程序等

● Ruby 最擅长快速构建数据实体的 Web 应用程序,它能让你更专注于特别功能,而不是插入、更新和删除这些查询操作。


编译自:Python vs PHP vs Ruby: A Detailed Comparison





推荐阅读

趣味升级,2月25日-26日厦门、福州源创会报名啦!

适合教孩子编码的 7 款免费编程语言

初创公司选择 Swift 而不是 Objective-C 的七个原因

编程必备,程序员应该都知道的7款文本编辑器

为什么越来越少的开源项目使用 GPL 协议

点击“阅读原文”查看更多精彩内容