• RubyConfChina 2013 计划 at 2013年05月09日

    #103 楼 @Koz

    感谢你的耐心回复,我英语太差,在这里就不献丑,还是用中文说好了。

    之前真不知道日语在语言学方面,竟然跟欧洲有关,让我对日语的渊源多了一些了解。

    因为缺乏比较,直觉上来说,我觉得你中文应该是不错了,如果有兴趣在中文上更上一层楼,本人可以帮忙了~ 倒不是说本人中文有多么好,主要因为我是一个相当较真的人,无论看贴还是写回复,所以,相对来说,写出来的句子可能更加通顺一些。

  • RubyConfChina 2013 计划 at 2013年05月05日

    #101 楼 @Koz

    知道有这么个人,但不知道是您呀~~ 哈哈! 你中文还有待提高,我一只在想,中文和日文,在语法上的差别,有这么大么?如果让我写英文,不考虑用词方面的问题 (假设单词我都知道改用什么), 我写出来的句子给别人看,估计效果比你差远了。

  • Ruby 版本的在那里?

  • RubyConfChina 2013 计划 at 2013年04月30日

    还有个小小建议,我非常期待可以将 Ruby ConfRails Conf 分开,由不同的人搞,大家可以都去参加,或者参加其中之一,虽然 Rails 在国内几乎就是 Ruby 的代名词。

  • RubyConfChina 2013 计划 at 2013年04月30日

    #80 楼 @Koz

    这位兄弟一定是 非中国人 吧?貌似几个回帖,我看起来好累好累 (比看英文都累多了), 中文有待提高呀。

    @lgn21st , 其实,人在那里有多大关系?你在青岛一样可以领导在 中国的某个地方 举办 Ruby Conf. 你可以再次委托其他志愿者来做具体事情,就像 2012 那样。

    真正开始行动后,也许并没有想象的那么难。

  • 一道 Ruby 水平自测题. at 2013年04月30日

    #51 楼 @pzgz

    哈哈。没有没有~

  • 关于类名常量 at 2013年04月30日

    #8 楼 @zputee

    你这话不准确. 能添加 instance_method,然后new一个对象吗?

    当然可以。Class.new.new 不就是吗?我想你的意思是说,能 new 当前类的对象吗?

  • 关于类名常量 at 2013年04月30日

    楼主的探索精神值得鼓励!!

    不过在常量方面,似乎还有一些东西可以挖掘,给一个思考方向,直接在 Object 中定义一个常量 A, 与在 Kernel 中定义一个常量 A, 然后混入 Object, 在代码中,你都可以直接通过 A 的方式 (不加域限定符::) 来引用,为什么呢?

  • 关于类名常量 at 2013年04月30日

    #3 楼 @baxiaopeng

    我认为下面这句话不准确:

    换句话说,就像类是对象一样,类名无非就是一个常量而已。

    我是这样理解的。(仅供参考)

    类不是对象... 类是一个结构,类名才是对象,并且这个对象是一个常量。你可以通过这个对象 (或常量) 来引用 .

  • 这哥们儿太极端了,刚开始用 linux, 就传教类似于 nano 和 let 之类的极端玩意儿,nano 虽然可定制性蛮强 (可以改 N 多快捷键), 不过是在算不上什么好编辑器,只不过在服务器上凑合用用。至于 let, 还不如直接打开 bc, 直接计算更简单一些。

    我想说下 Arch 和 Slack, 网上也常常将这两个发布版进行比较,Arch 我没用过,不过记得在那里看过介绍,风格主要来自于 Slackware. 不过 Slackware 使用 BSD 风格的脚本,和主流的 Linux 很不一样,另外,他们的包采用的文件格式完全一样,一部分 Arch 的包,可以直接在 Slack 下用。说起入门的难度,Slack 应该比 Arch 更容易一些,至少所有需要的包已经装好了。

  • 且不论 etags 是否好用,看到别人把 Emacs 打成 emcas, 我声明... 我也蛋疼得很...

  • 一道 Ruby 水平自测题. at 2013年04月28日

    #48 楼 @pzgz

    哈哈。其实,这道题的意义就在于:对六个要点一一分解,并吃透,并理解这些要点在这里例子中实际起到的作用。这绝不是一道给出答案就完了的题。能挖掘很多东西出来 (以上六点,又可以引申出不少东西来), 这正好可以作为你对面试者挖掘的起点,否则,你直接提出问题,而没有一个实际例子,这样很难描述以上 知识点 吧?

    p.s.

    好吧,其实从头到脚,我只是提了一句,看到有人贴 Rails面试题, 然后我想到之前遇到的一个问题, 而且我标题也说了么... 是自测题~ 是楼上的各位 XD 硬要把这道题作为面试题。

    #49 楼 @zgm 对呀,这是 Ruby 语言内建的约定, 貌似没有 配置 呀。

  • 如何更好地回答 at 2013年04月28日

    #5 楼 @zgm 貌似不少呢... 也不知道解决没解决,甚至怀疑是否看过答案呢~

  • 一道 Ruby 水平自测题. at 2013年04月28日

    #44 楼 @baxiaopeng

    Ruby 的确不知道。但是它会尝试调用 to_proc. 这是 Ruby 语言内建的 隐式转换机制.

  • 看楼主提供的山寨版的 load, 给我一个错觉,就是楼主认为 eval 和 load 是等价的。所以用 eval 来实现 load. (虽然真实的 load 貌似是 C 实现的), 我想问一个问题,在你写山寨版 load 时,你有考虑过 load 和 eval 的区别吗?

    看代码:

    module Kernel
      def load1(fn)
        eval File.read(fn)
      end
    end
    
    load1 './person.rb'
    
    p Person   # => Kernel::Person
    

    而如果用常规的 load.

    
    module Kernel
      def load1(fn)
        load fn
      end
    end
    
    load1 './person.rb'
    
    p Person   # => Person.
    

    因为 Person.rb 一个臆造的文件,而你仅仅使用一个 puts 输出来验证 load 是否正确,肯定不妥。(不管在那个上下文空间被执行,都会 puts), 而如果需要确保第一个 load1 工作的像 load 那样,也只有定义在 Object 中,作为一个私有方法,才有可能正确。

    好吧,如果我说这些有些多余 (楼主根本没这么想), 就当我上面废话好了。

  • #43 楼 @luikore

    师傅在夸我吗?哈哈!我要再接再厉,努力努力!

  • Rails 初学者指南 at 2013年04月27日

    补充:新手该看的第一本书是 : Head First Rails, 图画版的,简单易懂,不过是 E 文版的。

    好吧。英文阅读, 这又是一个使用 Rails 之前,需要打下扎实基础的技能...

  • Rails 初学者指南 at 2013年04月27日
    在没有经历过足够的痛的前提下,要理解很多改进就成了一件不容易的事情。
    

    这就是标准答案,其他只是帮衬。痛啊痛啊,等你习惯了,觉不到痛的时候,就好了。

    楼主还有一句话:

    那时我主要是一个后端开发程序员...
    再跟自己的已知的知识体系做结合...
    

    这都是亮点... 我觉得应该达成共识,Rails 根本就不是初学者应该碰的玩意儿~

    而且不要再谈什么实战了,让初学者,还是打好基础一步一步来吧。

    试想,当初楼主之前不懂 SQL, 不懂后端开发,没有熟悉至少一门面向对象的 (动态语言), 也不懂基本的 Linux 知识,好吧,也许还没有一个适用于自己的编辑器,会是现在这样么?

    还有:对于新手,Agile Web Development With Rails 绝不是适合你看的第一本书,这来自于本人痛苦的体会,当然,个人体会,仅供参考。

  • 还没有看楼主的讲解,不过看楼上诸位的争论,倒是很精彩。

    不过看出来一个问题 (在我自己身上,同样反复出现的问题), 那就是简单问题复杂化,概念的发散,想当然的把很多东西关联起来。我想澄清以下几个概念,避免概念缠绕,理不清。如有问题,请大家指正。

    1. Block 是 Ruby 原生的语法结构,拿英文说,就是 Literal (字面量), 他和数组的 [] 是一样的。它不是对象。

    2. Proc 是一个类,这个类有两种类型的对象 (定义方式不一样), 一个是 Proc 对象。(使用 Proc.new {}或 proc {} 定义), 一个是 Lambda 对象。

    3. 可以将 Proc 对象 解释为 Block 的 对象化 形式。而 Lambda 就是 Lambda, 它和方法无关,不要把 Lambda 和 方法扯到一起。

    4. Block 以及 Proc 对象是 yield 语义,Lambda 是 Invoke 语义。( method 也是 invoke 语义)

  • #61 楼 @luikore

    我一直觉得 @hhuai C 很牛的... 虽然我目前并不懂 C.

    @hhuai, 恕我妄言,你别怪我哈!我一直觉得你有个缺点,就是编码习惯不太好,因此再牛,我估计也常常难免出错。建议老兄看看 代码整洁之道 (马丁大叔写的), 还有,花点时间,用个好点的编辑器...

  • 且不论对象本身是否变化,这个场合数组用 Wave 首字母大写形式,没有意义呀。如果在类中被定义,或者不想让它变, 如果变了, 请警告我, 也应该是 `全部大写', 搞的和类名称约定一致,这不是让人犯错误么...

    @fsword 虽然 Wave 的确没有变化 (它的 object_id 始终引用同一个数组), 但是这里用常量的意义不在于没有被重新 assign, 而在于:我不想它被 assign , 或者 希望总可以被访问. 而这些条件下,不应该用和类一致的约定。而应该用全部大写。以楼主的例子来说,我看不出来非要用 常量 的意义。

    #7 楼 @luikore 师傅觉得我的理解有没有问题?

  • XahLee 你们还认识吗? at 2013年04月23日

    我貌似没看过他的文章,不过看照片,貌似真有些 Geek 的风格。(聪明绝顶,头发乱乱的,胡子拉碴)

    其实可以理解,这样的人总是不是那么擅长推销自己,短期内也不会赚到什么钱的。在国外语言不通,貌似更难了。

  • 好长好长呀~~! 有机会一定细细品读。

  • 明天去呀!!

  • 王垠谈编辑器与 IDE at 2013年04月23日

    #37 楼 @diga2005

    真的吗?那我真是有幸了!哈哈

  • #25 楼 @franky_xhl

    注意备份... 应该迟早要还的... 我也懒得折腾了,我现在已经包含了我所用的所有东西了,才用了 2.5 G 的三分之一。

  • 王垠谈编辑器与 IDE at 2013年04月21日

    我觉得,王垠真的是很牛和牛!牛的一塌糊涂...

    不过,有一点,不知道出于什么原因,我似乎没看到过他提起过有关 Ruby 的只言片语...

    难道他没有用过 Ruby ? 如果是事实,这应该是他最遗憾的事情了。(至少我替他遗憾...)

  • #12 楼 @PrideChung

    要不就是淘宝帮刷的那些家伙们太懒了,邮件名称非随机,太 TMD 有规律了。