使用花括号是否违背“Ruby方式”?

前端之家收集整理的这篇文章主要介绍了使用花括号是否违背“Ruby方式”?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我已经使用 Ruby大约两个星期了,而且我的编程时间太长了,但是我从C风格的背景(C,C#等)开始学习语言.无论如何 – 我的一个好朋友和导师正在看着我前几天写过的一些Ruby,他告诉我,如果他再次使用Ruby中的花括号来抓我,他会打我.

好吧,我刚刚通过this About.com article找到了关于Builder的内容,并且他们发布的示例使用了大括号.有没有不同的方法来做到这一点,还是你必须使用Builder的花括号?

这似乎是一个小问题,但我是Ruby的新手,我不想让自己养成任何坏习惯.你们有什么感想?

解决方法

虽然有些人选择“支持单行,支持多行”,我个人认为以下规则最合乎逻辑:

>当你的块有副作用时(通常使用每种方法和相关方法)和使用do-end@H_404_11@>当你的块没有副作用时使用大括号(地图,注入和类似)

这个逻辑很适合Matt写的方法链问题.

这种方法的一个好处是,它会让你在每次编写块时都考虑副作用,并且它们非常重要,尽管有时会被没有函数编程背景的编码器忽略.

如果不涉及副作用术语,另外一种方法是:

>对执行的块使用do-end@H_404_11@>对返回的块使用{和}

这里有几篇文章有更多信息:

http://onestepback.org/index.cgi/Tech/Ruby/BraceVsDoEnd.rdoc

http://talklikeaduck.denhaven2.com/2007/10/02/ruby-blocks-do-or-brace

猜你在找的Ruby相关文章