可以,这很 php!
我记得当时我们有想法迁移到 jruby 上,就是因为听鬼佬说他们比较牛,多线程能跨核,天天说日本人水平不行…… 后来我写了一个测试脚本,跑的是以前我们的一个子工程,按照实际业务逻辑模拟了一些 API 调用,最后结论是 jruby+ thin 比 cruby+rainbows 慢上不少,不知道到底是我们的问题还是 jruby 本身就是慢。 后来我们就打消了迁移到 jruby 的想法了。
#1 楼 @alucardpj 说的不确切。 \r和\n本身不一样,一个是 return(回车)一个是 enter(换行)。而不同的操作系统里,表示换行符的字符不一样。 老的 mac OS 里是用 return 做换行符,也就是\r(所以苹果机的”回车“键上面写的是 return,而不是 enter) windows 上,是用\r\n表示换行的。而 windows 上,我记得如果你单独打印\n,实际上输出的也是\r\n。(这个不是很确定) linux 和现代的 OSX,用 enter 做换行符,也就是\n。
在Ruby中可以考虑引入Python这种通过注释来进行检查的方法。
那里的大意是说,有人提出,可以参考 python 那种做法,引入 anotation 来进行静态的检查,而不是说 ruby 未来的方向性就是它。 后面还说,松本个人对这种“静态类型检查可以提高性能”的说法表示怀疑,他认为这种说法不一定就是对的,有可能只是人们一厢情愿而已,还列举了 V8 的例子,表示即使不借助静态类型检查,也能够做到高性能。
这是我的结果,第三点和楼主说的还是比较有区别的,第三个测试我这里回收了很多内存。
感觉 tap 方法反而让代码更复杂,不好写也不好读。相较之下我更倾向原来的写法,尽管有点冗余但是非常清楚。
原来可以用 as user 的方式切换 uid,学习了。
第一反应还以为是之前 ruby 里面那个对非 nil 对象调用 try 仍然会报找不到方法的帖子呢
#1 楼 @Rei 1、我一开始没描述明白,我的意思是弱类型或者动态类型,js 和 ruby 分别是前者和后者,但是例子我只举了 ruby 的,因为 js 那边是临时想到的。 2、如果是一个变量的话这样写很好看,但如果需要多个变量(比如假设一个 code 和一个 data 一个 time)、或者不同条件里所执行的代码并不那么结构一致的话,按您的结构就需要写成
code, data, time = if condition
some_function object
...
# return an array
else
some_other_function object
...
#return another array
end
这样子感觉有点不够整洁。不知是否还有更好的写法呢?
[quote]
过多注释的代码段,往往都是因为那段代码比较糟糕,散发着一股恶臭。
原则:当你感觉需要写注释时,请尝试重构,试着让所有注释都变得多余。
[/quote]
虽然我的开发经验尚欠,但我个人感觉这并不一定是由于代码比较糟糕,有时也可能是由于需求本身就有些模糊甚至奇怪。在这种情况下,前一个程序员可能会希望在自己离职以后,也能让接手重构或修改此段代码的人了解最关键的需求,而尽可能不需要查阅其它的文档。因此注释里写到的东西可能更多地在讲需求(或者业务逻辑)方面(即使它看起来像是在解释代码)的问题。
在这个意义上,我想这一段可以补充为:
不知道 LZ 现在还招人不?我是北京工商大学的 14 年应届毕业生,目前有三个月 ror 开发经验,平时比较喜欢折腾各种各样的技术,linux/git 使用也比较熟练,日语有一定水平,2010 年考过 N1(口语之类的相对差点,而且现在有点生疏了。。。),有点想应聘您的初级 ruby 程序员,不知道上述条件是否满足最低要求呢?
#31 楼 @sundevilyang 呃,虽然长了张姑娘脸但是我是男的……
上传了头像,不过貌似评论列表里没更新……是 rubychina 对 comment 的某些东西用了缓存导致的么。。。