几个月以前我想寻找一种技术来运行服务器端的iPhone应用程序。并且当时面前有两种可供选择的技术:
Ruby on rails 和
python.
而这里为什么不是其他语言呢?并且我之前就已经了解java以及java 的架构。但是我都不想用 ,因为即便是一个简单的程序,用java来实现的话也需要很大的ram。在当时我并不想要那么大一个服务器。至于PHP,我实在不喜欢它丑陋的语法。
这篇文章并不是编程语言之间的对比,只是解释我为什么选择了ruby做为第一个要学习的语言。
第一印象
很明显得,在我学一个框架之前我需要先学习运行在其之上的语言.我去的第一个地方是这些语言的官方网站:
Ruby and
Python.
做为一个开发者,Ruby官网的设计给我留下了更深更好的第一印象.Ruby的网站更加飘亮,但漂亮并不是它更好一些的原因。而是因为它更容易找到如何开始,我很快的找到了ruby语言的概述,需要做的第一件事情,通过简洁的步骤来来了解到关于它的更多信息。
与之形成鲜明对比的是我在对于Python官网的失落,它有太多的文本信息并且没有明确的操作指导。如果python的站点能够设计的更有好一些就好了。
语法,喜欢的就是最好的
注:这个地方限于英文水平实在无法给一个合适翻译过来,但意思应该是可以理解的。
在这一点上来说,我感觉我对ruby有一种优于python的熟悉感。
1.Ruby有块,我喜欢块,因为我最使用Groovy开始编程的。
2.Ruby支持三元运算符。
beer.amazing_taste? ? me.drink : garbage.put(beer)
3.Python支持多继承,但我所有的编程背景都是使用单继承语言,如果在我的代码里出现了多继承,我可能会感觉到很糟糕。
而我最喜欢的是ruby与函数式编程的相似性。例如,通过直接传递一个块给单个函数来遍历集合。
下面是ruby用块来遍历集合:
pubs_in_dublin.each do |pub|
if pub.has_good_beer?
"I need to go to #{pub_name} in Dublin before I die."
end
end
下面是python用函数和for来遍历集合:
def should_go_to_pub(pub):
if pub.has_good_beer:
"I need to go to " + pub_name + " in Dublin before I die."
pubs_in_dublin.each(should_go_to_pub)
# or
for pub in pubs_in_dublin:
if pub.has_good_beer:
"I need to go to " + pub_name + " in Dublin before I die."
至少,我不确定我是否会喜欢在语言之前的那些定义.
结语
现在已经很清晰了,我正在学习Ruby.而我相信在将来学习Python会和其它语言一样好。
如果你打算学习Ruby on Rails,你可以看看那
Code School这个网站,他们的课程很优秀,我已经爱上了他们的教学方式:在做中学习。其它我喜欢的关于ruby[On Rails]的资料:
RubyInside
The Ruby 1.9 Walkthrough
RailsCasts
我也想听听 你们的想法.让我们一起讨论,在评论中学习到更多。
英文原文:
Why I Choose to Learn Ruby Over Python
版权所有:雁飞蓝天,转载请注明出处:http://bingyingao.iteye.com/blog/1819878
- 大小: 132.5 KB
分享到:
相关推荐
PyCall也支持将Ruby对象转换为Python类型,反之亦然。例如,将Ruby字符串转为Python字符串: ```ruby ruby_str = "Hello, Ruby" python_str = pythonify(ruby_str) puts python_str.class # 输出 ``` 值得注意的是...
PyCall:从Ruby语言中调用Python函数该库提供了直接从Ruby语言中调用Python并与之进行部分互操作的功能。 您可以在PyCall中导入任意Python模块:从Ruby语言调用Python函数该库提供了直接从Ruby语言调用Python并与之...
在游戏开发领域,选择合适的编程语言对于项目的成功至关重要。标题提到的"用Python, Lua 和 Ruby语言设计游戏",这三种动态语言各自拥有独特的优点,适用于不同的游戏开发场景。接下来,我们将深入探讨每种语言在...
首先,Python以其简洁易读的语法和丰富的库支持而闻名,使其成为初学者和专业人士的理想选择。在游戏编程中,Python可以用于创建游戏逻辑、管理游戏状态、处理用户输入以及与其他系统集成。例如,Pygame是Python中一...
本文将探讨为什么学习Python或Ruby对于程序员来说是必要的,并与一些常见的编程语言进行对比。 首先,Python和Ruby相比C/C++/Java等语言,能显著减少代码量。据估计,Python或Ruby的代码行数仅相当于Java代码的...
我应该学习Python还是Ruby? 乍一看,Python和Ruby似乎是非常相似的语言。 两者都是用于快速开发的高级语言。 两种语言都是优美的语言,如果编写得当,它们会很直观,并且读起来很像英语。 动态是什么意思? 好吧...
Python适合快速开发和原型验证,Lua则在大型游戏引擎中广泛应用,而Ruby则为喜欢其语法风格的开发者提供了另一种选择。在实际项目中,开发者通常会结合这些语言的特点,根据游戏的需求和团队的技术栈来选择最合适的...
### Python与Ruby:异同与选择 #### 引言 在选择编程语言的过程中,开发者往往会根据项目的具体需求和个人偏好来做出决策。对于那些在Python和Ruby之间徘徊的开发者而言,了解这两种语言之间的区别和相似之处至关...
而文件名“New Microsoft Office Word Document.docx”则提示我们其中可能包含一篇关于Python和Ruby学习的文档,详细讲解了相关概念、技巧或实践案例。遗憾的是,由于没有实际的文件内容,无法进一步展开讨论。如果...
在游戏开发领域,Python、Lua和Ruby这三种脚本语言因其简洁、高效和易学习的特点,逐渐成为开发者们的首选工具。《用Python,Lua和Ruby语言设计游戏-Game.Programming.with.Python.Lua.And.Ruby》这本书深入探讨了...
unholy 可以将 Ruby 编译成 Python 字节码,此外还可以将字节码翻译成 Python 源码,使用包含其中的 Decompyle。 标签:unholy
综上所述,sciTE凭借其对Ruby和Python的出色支持、跨平台性、简洁而强大的特性,成为开发者们的理想选择,特别是那些喜欢轻量级工具但又需要高效编程环境的人。无论是初学者还是经验丰富的程序员,sciTE都能提供一个...
Eric is a full featured Python and Ruby editor and IDE, written in python. It is based on the cross platform Qt gui toolkit, integrating the highly flexible Scintilla editor control. It is designed to...
Ruby 常常为方法添加别名以提高易用性,而 Python 库的命名规则有时不够统一,有的使用 snake_case,有的使用 CamelCase。 总之,Ruby 和 Python 在设计哲学上有所分歧,Ruby 更注重灵活性和动态性,而 Python 强调...
该库提供了直接从Ruby语言调用Python并与之进行部分互操作的功能。 您可以将任意Python模块导入Ruby模块,通过从Ruby到Python的自动类型转换来调用Python函数。 支持的Ruby版本 pycall.rb支持Ruby 2.3或更高版本。 ...
在编程语言的世界里,Ruby与Python都是非常受欢迎的选择。这两种语言各有特色,适用于不同的场景。本文将深入探讨Ruby相较于Python的优势与劣势,帮助读者根据自身需求做出合适的选择。 #### Ruby的优势 ##### 1. ...
根据给定的信息,“Python、Ruby游戏设计参考图书”是一本详细介绍如何使用Python和Ruby这两种脚本语言进行游戏设计与开发的书籍。本书不仅涵盖了游戏设计的基本原理,还深入探讨了如何利用这两种流行的编程语言来...
学编程选什么语言好?是php、python还是ruby.doc