将Python或Ruby用于新的REST Web API的客观原因

时间:2009-12-05 00:55:25

标签: python ruby web-services api rest

所以这个线程绝对不是为什么Python比Ruby更好或反过来的线程。相反,这个主题是客观批评为什么你会选择一个来编写一个RESTful Web API,它将被许多不同的客户使用(移动,网络浏览器,平板电脑等)。

同样,不要将Ruby on Rails与Django进行比较。这不是一个依赖于RoR或Django等高级框架的Web应用程序。我只是想听听为什么有人可能选择其中一个来编写一个RESTful Web API,他们必须从明天开始,完全从头开始,以及他们可能从一个到另一个的原因。

对我来说,语法和语言功能完全是多余的。两者都提供了大量的功能,当然两者都可以实现相同的最终目标。我想如果有人翻转硬币,那么使用一个硬币就足够了。我很高兴看到一些对他们的工作充满热情的网络服务专家会回答他们为什么会以一种非常客观的形式使用其中一个的原因。

7 个答案:

答案 0 :(得分:6)

我想说重要的是,无论您选择哪种方式,请确保您的选择不会通过REST API泄漏。您选择的API的客户端无关紧要。

答案 1 :(得分:5)

我认识Ruby,不知道python ......你可以看到我倾向于哪种方式,对吗?

答案 2 :(得分:4)

选择您最熟悉的并且最有可能以最快的速度完成任务。

答案 3 :(得分:4)

是的,翻转一枚硬币。事实是,你将找到任何一种语言的极简主义框架。 Heroku是说Ruby的一个非常强大的理由,但可能还有其他类似的Python主机。但Heroku使得将api部署到云中变得很容易,无论是Rails还是使用Rack的其他Ruby项目。 WSGI没有给你这个选项。

至于实际的实现,我猜你会发现他们都是完全称职的语言,并且都很喜欢编程。

答案 4 :(得分:2)

我认为它们在功能上相当匹配。我更喜欢Python,但我已经使用了十多年,所以我承认接下来的内容是完全有偏见的。

恕我直言Python更成熟 - 它有更多的库(虽然Ruby可能正在赶上),我认为包含的库设计得更好。语言演变过程也更加成熟,在决定将它们包含在发布中之前,通过PEP公开讨论每个提议的特征。我觉得Ruby语言的开发更加特别。

Python广泛应用于Web开发之外的许多领域 - 科学计算,CGI渲染管道,分布式计算,Linux GUI工具等。在Rails出现之前,Ruby很少受到关注,因此我得到的印象是大多数Ruby工作重点是网站开发。如果你只想用语言做这个问题,这可能不是问题,但它确实意味着Python拥有更多样化的用户群和更多样化的库。

Python也更快。

答案 5 :(得分:2)

Ruby + Sinatra

非常容易使用/作为机架中间件 - 有人已经提到了heroku

答案 6 :(得分:1)

要么做得很好,要么通过其他方式从学习新事物中获益。为什么不和每个人一起度过几天?通过一个简单的问题子集了解您可以获得多远,然后看看您的感受。奖励积分会在这里报告并回答您自己的问题!