文档章节

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

编辑部的故事
 编辑部的故事
发布于 2017/02/22 16:45
字数 870
阅读 7412
收藏 57

编程语言种类繁多,每种语言都有它们的独特的优势。开发者在对编程语言的进行选择时往往很讲究。因此,这篇文章将从各个角度对 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 内置库的命名约定多种多样,很难记住
  • 不适合开发桌面应用程序,难以维护
  • 错误处理机制历来很差劲

Python

  • Python 没有 'switch' 语句和 'do ... while' 构造
  • 类和方法都没有 abstract 和 final 修饰符
  • 数据库访问层方面有限制
  • 在处理多处理器/多核心工作方面其实不是很好
  • 运行速度慢

Ruby

  • 很难学会
  • 缺少信息资源
  • 相比其他编程语言,处理时间(CPU时间)比较长
  • 开发和更新比较慢

各自的优势

PHP

  • 容易上手,尤其适合有 C++,C#,Java,JavaScript 等开发背景的开发者。
  • 可以部署到大多数网站服务器上,如 Apache,Microsoft IIS,Netscape,个人网络服务器,iPlanet 服务器等。
  • 适用于几乎每一种操作系统和平台
  • 提供大量的可用扩展和源代码
  • 可快速开发任何类型的 CMS
  • 主要开发框架:ZendYiiLaravelCodeigniter

Python

  • 简单易学,适合编程初学者学习
  • 提供了快速原型和动态语义功能
  • 面向对象编程驱动型
  • 可在多个系统和平台上运行
  • 主要开发框架:DjangoFlask 等。

Ruby

  • 纯粹的 OOP(面向对象编程)
  • 拥有一套整洁、简易的语法,让新开发人员很容易上手
  • 用 Ruby 编写的可扩展程序很容易维护
  • 超丰富的字符串和文本处理技术/方法
  • 能够用一套简单的 API 编写多线程的应用程序
  • Ruby 基本框架是 Rails。

结语

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

  • PHP 和 Python 更适合新手学习
  • PHP 是用于编写 HTML 页面的最佳语言
  • Python 是一种通用编程语言,可用于构建从 Web 应用程序、爬虫程序、守护进程到桌面 GUI 应 用程序等
  • Ruby 最擅长快速构建数据实体的 Web 应用程序,它能让你更专注于特别功能,而不是插入、更新和删除这些查询操作。

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

责任编辑:开源中国达尔文

© 著作权归作者所有

编辑部的故事

编辑部的故事

粉丝 1484
博文 265
码字总数 516729
作品 0
深圳
运营/编辑
私信 提问
加载中

评论(64)

金玉游龙
金玉游龙

引用来自“卖萌的程序猿”的评论

nodejs即将占领高地了
佳木

引用来自“脆霉公园”的评论

引用来自“佳木”的评论

ruby在元编程方面还是可圈可点的,要成为大牛,元编程就必须深入研究下;php7摆明了要取代C++,统一服务器端的架势;python要不是linux预装,早就消失了
php和c++速度差好几个数量级的怎木取代

如果都看中运行效率,大家干脆都用机器语言码代码算了,那个效率最高
佳木

引用来自“脆霉公园”的评论

引用来自“佳木”的评论

ruby在元编程方面还是可圈可点的,要成为大牛,元编程就必须深入研究下;php7摆明了要取代C++,统一服务器端的架势;python要不是linux预装,早就消失了
php和c++速度差好几个数量级的怎木取代

如果都看中运行效率,大家干脆都用机器语言码代码算了,那个效率最高
FalconChen
FalconChen
目测要被喷成狗狗
xcyl
xcyl
一会儿说ruby难学,一会儿说ruby语法简单好学,你到底想说啥
开源中国-首席村长
开源中国-首席村长
可能是翻译不行,也可能是文章本身太水。都散了吧~
开源中国-首席村长
开源中国-首席村长
一会儿说快一会儿说慢,到底是快还是慢啊
Ethan_Sun
Ethan_Sun
这文章写的简直精神分裂啊! 前面一直说 ruby 很难学习, 后面特么说: 拥有一套整洁、简易的语法,让新开发人员很容易上手. ...............
kidfruit
kidfruit
先不说内容准不准确了,前后都自相矛盾……这文章真是……
RoseKissYou
RoseKissYou
听起来有点道理
Python是如何怼翻其他编程语言而窜上宝座的

来PK啊! 谁怕谁啊! 在过去的两年间,Python一路高歌猛进,成功窜上“最火编程语言”的宝座。 更可怕的是,这把火不仅仅是在程序员的圈子里越烧越旺,甚至还烧到了程序员的圈子外,从小学生...

超级数学建模
2018/04/18
0
0
每个程序员都应该学习使用Python或Ruby

如果你是个学生,你应该会C,C++和Java。还会一些VB,或C#/.NET。多少你还可能开发过一些Web网页,你知道一些HTML,CSS和JavaScript知识。总体上说,我们很难发现会有学生显露出掌握超出这几种...

pyruby
2014/02/09
122
0
Ruby on Rails VS PHP VS Python

每当我们迷茫于选择合适的平台来开发网站时,网站开发专家通常会建议基于一些因素对所处的境遇进行考量。这些因素通常包括周转时间、质量、跨浏览器性、与其它框架对接的成功案例、数据安全性...

王振威
2012/11/27
2.7K
0
Ruby vs Golang:四个维度对比,谁更胜一筹?

软件应用程序的快速增长已经不再只是一件其本身受欢迎的事情了,它更是带来了深刻改善所有行业业务流程的真正机会。所以,对于企业、行业来说,通过合适的编程创建出出色的软件解决方案成为了...

局长
2018/08/15
6.1K
21
十张图读懂 PHP、Python、 Ruby 三大语言的差异

图1、PHP vs Python vs Ruby: 市场份额 Winner - PHP 图2、PHP vs Python vs Ruby: 主流网站使用情况 Winner - 平局 图3、PHP vs Python vs Ruby: 可用性 Winner - Ruby 图4、PHP vs Python......

王练
2017/03/15
15.6K
32

没有更多内容

加载失败,请刷新页面

加载更多

Spring Security 实战干货:基于配置的接口角色访问控制

1. 前言 欢迎阅读 Spring Security 实战干货 系列文章 。对于受限的访问资源,并不是对所有认证通过的用户开放的。比如 A 用户的角色是会计,那么他就可以访问财务相关的资源。B 用户是人事,...

码农小胖哥
20分钟前
3
0
vue admin template 轻量级 后台管理系统基础模板 vuecli4 分环境打包 统一管理接口地址

本模板目的是为了能在创建项目的时候,减少不必要的时间浪费,例如api接口的封装、axios请求的封装以及基础布局等时间的浪费,故将基础功能提取出来作为公司内部的一个后台基础管理系统,为什...

羊皮卷
22分钟前
1
0
idea免费版注册码

https://www.jiweichengzhu.com/article/eb340e382d1d456c84a1d190db12755c

码农屌丝
22分钟前
3
0
跨越敏捷和devops的鸿沟

day2 更多的是理念思想和一些经验的分享吧 先来个鸡汤: 每个人都有自己的人生高山去攀越,技术人也有技术的高山,不是人生的全部,但又不可缺少的,我们要选对方向,找对方法去坚持去爬山...

ikki8776
22分钟前
3
0
MyEclipse教程:JPA开发(数据库)

1、配置JPA项目 JPA是类似于Hibernate的持久性规范,已成为Java EE 5规范的一部分。JPA使用Java 5注释来控制将普通Java类(POJO)映射到数据库表。 您可以通过创建任意受支持的基础项目类型(...

沫沫77
30分钟前
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部