论坛首页 编程语言技术论坛

我开始不喜欢ruby了

浏览 71871 次
该帖已经被评为良好帖
作者 正文
   发表时间:2008-06-14  
我觉得动汉语的人学ruby肯定占便宜,因为基本原理相通。
0 请登录后投票
   发表时间:2008-09-12  
andyhu1007 写道
 
  java语言更像是工业化语言,而ruby语言更像是一日常用语:易读,即使是一个不懂ruby语法的人也能够读懂,但是缺乏规范的格式和严谨的术语规范。


Java像一根铁棒, 就算一个没用过它的人,也能够凑或用。
Ruby像是锋利的宝剑, 对于武林高手来说是趁手的兵器,对于一般人,容易砍到自己。

如果一个水平一般的人,写出来的ruby代码可能会比他写出的java代码更糟。

是否使用ruby,团队成员的素质是一个因素。

不是每个人都适合ruby。
0 请登录后投票
   发表时间:2008-09-13  
liano 写道
andyhu1007 写道
 
  java语言更像是工业化语言,而ruby语言更像是一日常用语:易读,即使是一个不懂ruby语法的人也能够读懂,但是缺乏规范的格式和严谨的术语规范。


Java像一根铁棒, 就算一个没用过它的人,也能够凑或用。
Ruby像是锋利的宝剑, 对于武林高手来说是趁手的兵器,对于一般人,容易砍到自己。

如果一个水平一般的人,写出来的ruby代码可能会比他写出的java代码更糟。

是否使用ruby,团队成员的素质是一个因素。

不是每个人都适合ruby。


光说不练,比喻谁都能打。你试过啦?举个例子?


0 请登录后投票
   发表时间:2008-09-24  
玩的就是这种随意性,我理解这就是快乐编程吧
做了几年的.Net和Java感觉很不舒服,还是Ruby感觉好
0 请登录后投票
   发表时间:2008-10-04  
Ruby确实不是太简单。
0 请登录后投票
   发表时间:2008-10-05  
老土啊,居然还有人以为python是不在进步的,python有很好的meteclass的支持,像java的注解一样。
最重要的ruby的语法不是平常人能读懂的。
如果那位喜欢ruby的语法真的应该去坚持一下身体了。对于一串的乱码居然爱不释手还美名曰:简洁,这是动态语言的特点,很有函数式风格,很灵活。
都是鬼话,动态语言要都长成这个鸟样估计没有出生他的作者就把它掐死了,还会流氓于世界之上吗?
灵活就一定要必须难看嘛?
C语言灵活,可是你至少能写出好看的代码,ruby你是无论如何都写不出好看的嗲吗的。

几年前我偶然发现了一个流氓的比赛
http://www.ioccc.org/
如果那个朋友喜欢这上面的代码~能读懂,那么我就相信ruby是人类的语言,而非火星。
0 请登录后投票
   发表时间:2008-10-05  
fireflyc 写道
老土啊,居然还有人以为python是不在进步的,python有很好的meteclass的支持,像java的注解一样。
最重要的ruby的语法不是平常人能读懂的。
如果那位喜欢ruby的语法真的应该去坚持一下身体了。对于一串的乱码居然爱不释手还美名曰:简洁,这是动态语言的特点,很有函数式风格,很灵活。
都是鬼话,动态语言要都长成这个鸟样估计没有出生他的作者就把它掐死了,还会流氓于世界之上吗?
灵活就一定要必须难看嘛?
C语言灵活,可是你至少能写出好看的代码,ruby你是无论如何都写不出好看的嗲吗的。

几年前我偶然发现了一个流氓的比赛
http://www.ioccc.org/
如果那个朋友喜欢这上面的代码~能读懂,那么我就相信ruby是人类的语言,而非火星。

扯了半天,没见拉出段代码来溜溜,Ruby代码怎么就成乱码了?怎么就难看了?别瞎扯,给出代码比较下。玩meta programming不是每个人都会玩,就一般的代码来看,Ruby的表现显然比python更优雅。
0 请登录后投票
   发表时间:2008-10-05  
这个帖子还在啊!估计都是因为Rails而接触Ruby,只怪基于Ruby的Rails太强了。
1:适合新手。无痛上手,虽说有些知识迟早要面对,但Rails不会让你卡在那里,新手兴趣很重要。
2:适合有其它编程语言背景的高手。1、2个人能很快做一个web应用。
3:适合企业的业余程序员。他们对业务流程很熟悉,一个人也能完成以前需要花钱请专 业程序员来干的事情。
其实到大多数程序员都是干些装配的活儿。Rails会夺去一些蓝领程序员的饭碗。
0 请登录后投票
   发表时间:2008-10-05  
好吧,好吧,为了证明我不是在说谎,维护我好孩子的形象;我决定忍痛去看上一眼ruby的代码。(估计今后一个星期我都要处于晕乎乎的状态……)
先看一下它被人家吹的最“优美”的部分,迭代器。

some_list.each do |this_item|
  # We're inside the block.
  # deal with this_item.
end

不知道大家什么感觉,这个愚蠢的竖线符号是怎么想到的?它太优美太漂亮了。还有个好听的名称叫做迭代器。真是太伟大了。
好吧,我上面里没有提到python是无敌的。但是我要用这个不无敌的python来和无敌的ruby做一下对比:
python中有一个map函数的东西,不妨看看。注意请使用pythonic的做法。也许你会喜欢清晰的表达式而不是所谓的简洁表达。

再来看看第二个例子:
x = 10
y = 11
z = if x < y
  true
else
  false
end
z # => true

哦,世界上最伟大的发明,伟大的if居然如此用…………太伟大了,对了,ruby有? :这个运算符号吗?诸位喜欢如此灵活或者说是多变,诡异的写法吗?你会选择哪一个?也许你会说是灵活,可是语言的灵活不是语法的如此多变。

好吧,这段代码估计是诸位最喜欢的一本书(我也很喜欢,除了它上面的该死的ruby代码。)
    session[:user_id] = nil
    if request.post?
      user = User.authenticate(params[:name], params[:password])
      if user
        session[:user_id] = user.id
        redirect_to(:action => "index")
      else
        flash.now[:notice] = "Invalid user/password combination"
      end
    end

好像正常了很多……这些代码正常了很多,可是不难发现那句伟大的if的写法,居然有一个可爱的尾巴,我不明白它为什么不是一个函数而是一个无聊的运算符(它叫做运算符吗?如果叫那么ruby该会有多少运算符啊?又有多少运算符是具有上下文不同意义的呢?)还有那个取数据的做法,key居然带上一个冒号~为什么呢?这可能无伤大雅,可是这样做的原因是什么呢?为了显示与众不同吗?

这段代码同样是上面那本书中的代码~(我喜欢的书,;-)~)
<% form_tag :action => 'create' do %>
  <%= render :partial => 'form' %>
  <%= submit_tag "Create" %>
<% end %>

观察一下……哦,真是伟大的做法,=>这样的运算符都有……而且还有可爱的冒号。我无话可说。

那个松本弘先生喜欢把代码写的像文章,所以会有如此多的关键字如此多的运算符号。可是这些古怪的关键字和可爱的符号只有他老人家记得住,因为这个是给他自己用的。除非你具有超强的自虐倾向否则你可能不会喜欢品味这些古怪的语法,记忆这些可爱的关键字,伟大的运算符号。

还是说那个小小的python,太小了,你居然不需要记忆什么关键字和符号,很没有挑战性;估计这就是很多人不喜欢的原因。太简单的东西显示不出自己的伟大。

最后是meta programming,这个东西是ruby的新伪装吗?哦,它奇怪的外表又有了一种新的解释。
最后我们歌颂伟大的ruby吧,真是它的普及让我们这些人得以保住了饭碗;我们可以继续写别人看不懂的代码,一直这样下去;我们将有源源不断的财源。歌颂ruby~热爱ruby……因为它的复杂和怪异让我们保住了饭碗。
0 请登录后投票
   发表时间:2008-10-05  
最近由于一个WINCE上的项目而去学Python,虽然Python声称语法简单而功能强大,但是感觉很多东西是拼凑的,例如上面有人提到“像java的注解一样”的语法,感觉就像膏药一般贴上去,还有最终在2.6正式确立的with语法,和ruby利用闭包做事务相比优雅程度相去甚远。反观Ruby,它的语法演变却非常自然,这得益于原始的设计原则:彻底的对象化+遵循最自然的方式。

当然,评论各个语言的语法到底是不是优雅是非常主观的,而且很容易引起械斗,或许很快会有人跳出来说那个写程序时满屏幕都是括号的语言是全世界最优雅的。。。因此听别人说XXX语言好还是不好都是作不得准的,而且也是应人而异的,只有自己玩上一阵子才知道。
8 请登录后投票
论坛首页 编程语言技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics