`
meng9999
  • 浏览: 12818 次
  • 性别: Icon_minigender_1
  • 来自: 上海
最近访客 更多访客>>
社区版块
存档分类
最新评论

Ruby已死,python当立. 谁是动态语言的最后赢家?

阅读更多
    在ruby最火的时候,有激进者列出了N种理由说ruby可以全部取代java了;可是过了2年多了,ruby还是在ruby on rail这个web框架上得到应用,并没有什么新的东西出现在验证ruby很好很强大.
     相反pyhton却一步步的赢得动态语言的市场, python从来就不急着取胜,但却已经取胜,在服务器端,python被用来开发网络服务器,甚至游戏服务器。 能处理大量的TCP,UDP数据,有很好的多线程模型;被大量应用的网络框架Stackless Python,国内的开源项目Eurasia3使用coment模式的处理http长连接,还号称支持百万级别的连接;twisted网络框架也很牛,绝对比java的mina和C++的ACE方便好用,还是基于动态语言python的 。
      最近我也有一个项目计划使用js和flash交换数据,然后通过flash的socket连接到python的;这种网络框架ruby根本不合适。ruby最合适的还是ruby on rail,或者说是ruby on rail让ruby火了一把。
      就连javaeye的老大Robbin也说ruby是hacker使用的语言,开发ruby on rail的应用都是3-5人的团队,大一点的团队合作使用ruby就麻烦了;它并适应大规模团队的作战。只是hacker们的自娱自乐的工具,比如号称一个人写了一个大型的网站。
      python却不一样,他可以应用在大型的应用上 ,可以在大型的团队合作中得到应用 。在有一期程序员杂志里头采访了python的作者Guido,他本人现在在Google工作,提到了Google有大量项目是使用python开发的。比如现在的Google 的 Google APP Eng.他还提到他们的团队也使用过Ruby开发项目,结果失败了; 所以就放弃了Ruby。
         python也有向ruby on rail的框架django ,虽然这个框架没有ruby on rail那么火,但市场是稳稳定定的增长, 我感觉ruby的火热,是大家在次把目光放在动态语言上,或者说ruby的火热,会带出一个更强大的python.互联网在不断的去证明,python才是最合适的 。
       如果现在大家在有时间在动态语言上投资,长远的来说python才是值的了。
分享到:
评论
7 楼 ray_linn 2008-09-17  
robbin 写道
ray_linn 写道
根据老外的测评:Django的性能(TPS/S) 要远胜过rails,打算好好学习python+Django.


根据我的评测,ASP.net的性能(TPS/S)要远胜Django,所以你还是继续搞asp.net吧,哈哈。


你这么说不是类似耍流氓么?

我看不出任何证据证明那位测评的人有特别针对的立场,而是在陈述4种框架(php,rails,django,...)的性能比较。你的立场却是路人皆知了。
6 楼 ye_jian_hui 2008-09-17  
meng9999 写道

被大量应用的网络框架Stackless Python

Stackless Python不是一个网络框架。

meng9999 写道

Python有很好的多线程模型

Python的多线程虽然是系统线程,但由于解释器里有一个全局锁,多条线程并不能并行地跑,也就不能利用现在的多核CPU的好处。所以“很好”不知从何说起?

meng9999 写道

Ruby已死,python当立
在ruby最火的时候,有激进者列出了N种理由说ruby可以全部取代java了

你又何尝不是一个Python的激进者?


你喜欢Python也不至于这样批Ruby吧,Ruby也好Python也罢,喜欢用哪个就用哪个,不要老把对方说的一无是处来显示自己选择的东西有多好。再说你这个标题明显是标题党了。
5 楼 robbin 2008-09-17  
ray_linn 写道
根据老外的测评:Django的性能(TPS/S) 要远胜过rails,打算好好学习python+Django.


根据我的评测,ASP.net的性能(TPS/S)要远胜Django,所以你还是继续搞asp.net吧,哈哈。
4 楼 ray_linn 2008-09-17  
根据老外的测评:Django的性能(TPS/S) 要远胜过rails,打算好好学习python+Django.
3 楼 liuqiang 2008-09-17  
2个体系老早就接触了,并反复比对了一下,结果选ruby,想知道为什么吗?我不告诉你,哈哈
2 楼 robbin 2008-09-17  
引用
在ruby最火的时候,有激进者列出了N种理由说ruby可以全部取代java了;可是过了2年多了,ruby还是在ruby on rail这个web框架上得到应用,并没有什么新的东西出现在验证ruby很好很强大.


rake构建工具,rspec作为BDD驱动测试框架都是ruby世界很火的东西。

引用
在服务器端,python被用来开发网络服务器,甚至游戏服务器。能处理大量的TCP,UDP数据,有很好的多线程模型;被大量应用的网络框架Stackless Python,国内的开源项目Eurasia3使用coment模式的处理http长连接,还号称支持百万级别的连接;twisted网络框架也很牛,绝对比java的mina和C++的ACE方便好用,还是基于动态语言python的 。


Stackless Python自己官方网站是这样说的:An experimental implementation that supports continuations, generators, microthreads, and coroutines.

twisted不了解,网络框架无非关注两点:性能和接口易用性。ruby也有一些基于事件的、底层是C++代码的网络IO库,性能也很好,而且接口易用性也很棒,比方说EventMachine。

引用
最近我也有一个项目计划使用js和flash交换数据,然后通过flash的socket连接到python的;这种网络框架ruby根本不合适。ruby最合适的还是ruby on rail,或者说是ruby on rail让ruby火了一把。


你可以试试EventMachine,在你这个应用场景下来说是非常合适的,性能也很不错。自己不了解的东西不要那么着急下结论。

引用
就连javaeye的老大Robbin也说ruby是hacker使用的语言,开发ruby on rail的应用都是3-5人的团队,大一点的团队合作使用ruby就麻烦了;它并适应大规模团队的作战。只是hacker们的自娱自乐的工具,比如号称一个人写了一个大型的网站。


我从来没有这么说过。

引用
python却不一样,他可以应用在大型的应用上 ,可以在大型的团队合作中得到应用。在有一期程序员杂志里头采访了python的作者Guido,他本人现在在Google工作,提到了Google有大量项目是使用python开发的。比如现在的Google 的 Google APP Eng.他还提到他们的团队也使用过Ruby开发项目,结果失败了; 所以就放弃了Ruby。


其实Google的研发团队都是很小的,一般都是3-5个技术人员组成一个研发团队,像Gmail,Gtalk这样的研发团队也不过就3个人而已。另外Google是限定使用编程语言为四种:C++,Java,Python和JavaScript,Google的员工不可能在工作中用Ruby。

引用
python也有向ruby on rail的框架django ,虽然这个框架没有ruby on rail那么火,但市场是稳稳定定的增长,我感觉ruby的火热,是大家在次把目光放在动态语言上,或者说ruby的火热,会带出一个更强大的python.互联网在不断的去证明,python才是最合适的 。如果现在大家在有时间在动态语言上投资,长远的来说python才是值的了。


确实因为RoR的带动,Python得到的关注比过去要多。但基本上无论ruby还是python,要成为企业应用主流或者互联网应用主流都不太可能。企业应用的主流还是Java,而互联网应用的主流还是PHP。

不过从某种程度上来说,ruby在未来的想像力远远超过Python。这是因为目前Python在各个方面已经做的足够好了,可以改进的余地不大,有点不温不火的感觉。但是ruby现在的缺陷还比较大,可以改进的空间很大,所以想像力很大。而且SUN在JVM平台上面的动态语言支持不遗余力,因此在企业应用领域将来ruby发生什么,还不好说。
1 楼 sw2wolf 2008-09-17  
其实scala也不错

相关推荐

    用Python,Lua和Ruby语言设计游戏-Game.Programming.with.Python.Lua.And.Ruby.

    在游戏开发领域,Python、Lua和Ruby这三种脚本语言因其简洁、高效和易学习的特点,逐渐成为开发者们的首选工具。《用Python,Lua和Ruby语言设计游戏-Game.Programming.with.Python.Lua.And.Ruby》这本书深入探讨了...

    用Python,Lua和Ruby语言设计游戏-Game.Programming.with.Python.Lua.And.Ruby

    本资源主要涵盖了使用Python、Lua和Ruby这三种编程语言进行游戏设计的知识。这三种语言各有特点,适用于不同的游戏开发场景,下面将详细探讨每种语言在游戏编程中的应用及其优势。 1. Python Python是一种高级、...

    使用Python Lua和Ruby语言进行游戏编程

    在提供的压缩包文件中,"Premier.Press.Game.Programming.with.Python.Lua.and.Ruby.ebook-LiB.chm"很可能是一本关于使用这三种语言进行游戏编程的电子书,它可能会详细介绍如何利用这些语言来开发游戏,涵盖从基础...

    Game.Programming.with.Python.Lua.and.Ruby

    Game.Programming.with.Python.Lua.and.Ruby

    ruby-1.9.3-p547.tar.gz

    Ruby是一种面向对象的、动态类型的编程语言,由日本的松本行弘于1995年设计并开发。Ruby的设计理念是简洁、优雅,并注重程序员的生产力,它提供了丰富的内置库和强大的元编程能力。在本压缩包"ruby-1.9.3-p547.tar....

    ruby-1.9.2-p290.tar.gz

    Ruby是一种动态类型、面向对象的脚本语言,由日本人松本行弘(Yukihiro Matsumoto)创建。它强调简洁性和生产力,拥有丰富的类库和框架,如描述中的"Redmine",这是一个用Ruby编写的开源项目管理应用程序。Ruby的...

    Ruby语言中英文教程.rar

    内含 12 本 Ruby 语言中英文教程资源,本资源下载后解压缩将得到以下图书: Programming Ruby 2nd.pdf ...Ruby.for.Rails.Ruby.Techniques.for.Rails.Developers.(2006).pdf RubyCourse_1.0-1.pdf rubyonrails.pdf

    Ruby-PyCall从Ruby语言调用Python函数

    Ruby-PyCall是一个非常有用的库,它允许Ruby程序员无缝地调用Python的函数和模块,极大地扩展了Ruby的生态系统。这个库使得两个语言之间的交互变得简单而高效,特别是在需要利用Python的强大科学计算或数据处理能力...

    ruby-1.8.7-p302.tar.gz

    Ruby,一种为简单快捷的面向对象编程(面向对象程序设计)而创的脚本语言,在20世纪90年代由日本人松本行弘(まつもとゆきひろ/Yukihiro Matsumoto)开发,遵守GPL协议和Ruby License。它的灵感与特性来自于 Perl、...

    用Python,Lua和Ruby语言设计游戏

    标题提到的"用Python, Lua 和 Ruby语言设计游戏",这三种动态语言各自拥有独特的优点,适用于不同的游戏开发场景。接下来,我们将深入探讨每种语言在游戏开发中的应用、特点以及它们如何协同工作。 **Lua** Lua 是...

    passenger, 一种用于 ruby python 和 node.js的快速健壮的web服务器和.zip

    passenger, 一种用于 ruby python 和 node.js的快速健壮的web服务器和 :快速而健壮的web服务器和应用服务器,用于 ruby,python 和 Node.js部署web应用程序需要大量复杂性,增加了生产中有用的强大的企业级特性。...

    [Ruby编程语言].David.Flanagan等

    [Ruby编程语言].David.Flanagan等

    Apress.Pro.Android.Python.with.SL4A.Jul.2011.rar

    2. **SL4A介绍**:SL4A是一个开源项目,它允许用户通过多种脚本语言(包括Python、JavaScript、Ruby等)与Android设备的硬件和软件接口交互,比如访问传感器、控制硬件、发送短信、处理图像等。SL4A提供了一个API,...

    为什么你一定要学习Python或Ruby语言.pdf

    尽管Perl曾是动态语言的首选,但现在已被Python和Ruby取代。Perl的面向对象机制复杂,学习曲线陡峭,而Python和Ruby则提供了更直观、更简洁的语法。对于需要大量正则表达式处理的特殊场景,Perl仍有其优势,但对于...

    Ruby编程语言入门与实践 .pptx

    Ruby编程语言入门与实践 Ruby编程语言入门与实践 Ruby编程语言入门与实践 Ruby编程语言入门与实践 Ruby编程语言入门与实践 Ruby编程语言入门与实践 Ruby编程语言入门与实践 Ruby编程语言入门与实践 Ruby编程语言入门...

    最新少儿python趣味课件.pdf

    Python是一种高级编程语言,它属于高级语言的范畴,包括Java、VB、Ruby、Python、C等多达上百种语言。计算机使用这些语言与人类进行交流,而编程语言是人类与计算机对话的特殊方式,是一种双方都能理解的指令集合。 ...

    opencv_python-4.4.0.44-cp38-cp38-win_amd64.whl

    python可用的opencv;OpenCV是一个基于BSD许可(开源)... [1] 它轻量级而且高效——由一系列 C 函数和少量 C++ 类构成,同时提供了Python、Ruby、MATLAB等语言的接口,实现了图像处理和计算机视觉方面的很多通用算法。

    从Ruby语言调用Python函数-Ruby开发

    PyCall:从Ruby语言中调用Python函数该库提供了直接从Ruby语言中调用Python并与之进行部分互操作的功能。 您可以在PyCall中导入任意Python模块:从Ruby语言调用Python函数该库提供了直接从Ruby语言调用Python并与之...

    ruby-2.4.0.tar.gz

    Ruby是一种面向对象、动态类型的脚本语言,常用于Web开发、服务器端编程和各种应用程序的构建。在描述中提到的"ruby-2.4.0.tar.gz"是Ruby的一个特定版本,即2.4.0,它以压缩格式提供,方便用户下载和安装。这个...

Global site tag (gtag.js) - Google Analytics