登录  | 加入社区

黑狼游客您好!登录后享受更多精彩

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

查看: 406|回复: 0

Python vs Ruby: 谁是最好的 web 开辟语言?

[复制链接]

12

主题

0

帖子

0

现金

黑狼菜鸟

Rank: 1

积分
20
发表于 2017-12-4 21:01:33 | 显示全部楼层 |阅读模式 来自 美国
(点击上方蓝字,快速关注我们)



编译:开源中国
www.oschina.net/translate/python-or-ruby-web-development
如有好文章投稿,请点击 → 这里相识详情


Python 和 Ruby 都是现在用来开辟 websites、web-based apps 和 web services 的盛行编程语言之一。


这两种语言在很多方面有相似之处。它们都是高级的面向对象的编程语言,都是交互式脚本语言、都提供尺度库且支持长期化。但是,Python 和 Ruby 的办理方法却千差万别,由于它们的发展进程导致它们的语法和原理都大不雷同。


那么要接纳哪种语言来举行编程就必要好好思量了,由于每种语言都是本身的长处和缺点。而且这些优缺点都会影响我们的决定。


底子知识


Python 最初是作为科学范畴的原型计划语言的,由于它可以很轻易转换成 C++ 语言。Python 发展好久之后才被第一次用于网站开辟。而 Ruby 之以是盛行就是由于网站开辟,继续自 Ruby 的 Rails 框架被开辟职员用来计划复杂的网站。


哪种编程语言更得当你的必要?下面临于每种语言都做一个概述来资助你选择:


方法:最好的方法 VS 以人为本的语言


Python


Python 作为一种直接面向对象的编程语言。它重要的目标是对步伐员来说全部的事变都是很显着的。在 Python 语言中做某件事变的时间,只有一种‘最好’的办法。这种原理导致 python 语言的代码规范很严酷。


Python 的焦点理念重要包罗三条关键的分层原则:



  •     表现优于隐式;
  •     简朴优于复杂;
  •     复杂优于超复杂;


这种严酷的原理导致 Python 语言是一种易读且易学——这也就是为什么一部门码农说 python 语言是巨大的语言。对于,入门级的编程语言 Python 有很大上风。它的语法简朴,险些不必要去记。由于它的代码布局很清朗,开辟者很轻易知道统统从那里来,也很轻易去调试。


Python 代码的条理布局是很显着的一个特点。差别于其他编程语言,包罗 Ruby,Python 语言利用空格举行流程控制。代码的缩进决定了它实行的意义。利用空格是 Python “表现”原理的一个很典范的例子,一个 Python 代码的外形决定了它的逻辑布局和实行次序。


Ruby


差别于 python ,Ruby 是“以人为本”的语言,是按照开辟者以为的方式来运行的,它的代码读起来更像是口语化的语言(像开辟者)而不是像其他语言一样雷同于一种呆板语言。Ruby 遵照“最小轰动”原则,提供许多作相似事变的方法。这些相似的方法有多个名称,使得许多开辟者感到狐疑和沮丧。


差别于 Python,Ruby 语言利用了“模块”,一级对象在步伐中被当做一个单位。究竟上,Ruby 是一种面向对象编程的语言。统统皆为对象——乃至全局变量究竟上都是对象空间中的对象。类和模块自己就是对象,函数和运算符都是方法的对象。这种方式使得 Ruby 尤其强盛,尤其是当联合其他重要气力:函数式编程和 lambdas 表达式的利用。


除了模块和函数式编程,Ruby 为编程者提供了很多特性包罗分片、哈希、不哈希范例以及可变字符串范例。


Ruby 的追从者以为它优雅的编码方式是它最好的特点。同时,Ruby 的“神奇”的功能和机动性使得它很难追踪 bug。


社区: 稳固与创新


只管特性和编程哲学是选择一个语言的主要驱动因素,但是社区开辟者的气力仍旧会饰演一个紧张的脚色。荣幸地是,Python 和 Ruby 都为本身有强盛的社区而自大。


Python


Python 的社区已经包罗一个巨大的 Linux 社区和学术社区,因此它能提供许多学术(数学和天然科学)上利用的案例。这种支持不但给社区带来了稳固,还带来了多样性,这就导致了 Python 的增长不但限于在 web 开辟上。


Ruby


然而,Ruby 的社区从一开始重要就聚焦在 web 开辟上。它在创新上每每比 Python 社区更快,但是这种创新也引起了更多的粉碎。别的,它在多样性上,还没有到达 Python 的程度。


总结


对于 Web 开辟,Ruby  有 Rails ,Python 有 Django 。 两者都是强盛的框架,以是当谈到 Web 开辟时,你利用任何一种语言都不会堕落。你的决定终极将归结于你的履历程度和偏好。


假如计划专注于构建 Web 应用步伐,Ruby  是盛行和机动的,拥有一个创建在它之上的非常强盛的社区,始终处于研发的最前沿。


假如你对构建 Web 应用步伐有爱好,并盼望学习更加通用的语言,请实验 Python 。 你会得到一个多元化的社区,并从其所应用的各个行业中感悟到许多,并得到许多支持。


看完本文有劳绩?请转发分享给更多人

关注「Python开辟者」,提拔Python技能

fMHUM1rnDJMgI6Uu.jpg




上一篇:Numpy 库预备放弃支持 Python 2
下一篇:Python 口试中 8 个必考题目
您需要登录后才可以回帖 登录 | 加入社区

本版积分规则

 

QQ|申请友链|小黑屋|手机版|Hlshell Inc. ( 豫ICP备16002110号-5 )

GMT+8, 2024-5-15 16:55 , Processed in 0.062936 second(s), 47 queries .

HLShell有权修改版权声明内容,如有任何爭議,HLShell將保留最終決定權!

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表