if !arr.nil? && arr.empty?
在各个项目中见过很多类似的代码,其实前面那个判断完全可以省掉,只要规定 arr 不能为 nil,只允许为 [] 就好了。写个 Teacher#students 方法如果结果有可能返回 nil 而不是 [],这个代码我觉得就是不合格的。空数组可以当 Array 的一个简单的 NullObject。
有家公司招聘要求是程序员。
我怎么觉得第 2 个应该是反过来的……
#18 楼 @blacktulip 让你用 attr_reader 难道要是自封装 @words ?这里倒是不明白了……实例变量在内部直接访问很正常吧。
#18 楼 @blacktulip 试试我那个吧。
class Bob
def hey(words)
WordsParser.new(words).parse
end
end
class WordsParser
def initialize(words)
@words = words
end
def parse
if silent?
"Fine. Be that way!"
elsif shout?
"Woah, chill out!"
elsif question?
"Sure."
else
"Whatever."
end
end
private
def question?
@words.end_with? '?'
end
def shout?
@words.upcase == @words
end
def silent?
@words.strip.empty?
end
end
第二版代码的问题在于很多 WordsParser 相关的逻辑被扔给 Bob 了。
晚期四重奏、上帝保佑美国、狙击电话亭、这个男人来自地球、猎头游戏、捕蝇纸
我觉得你多虑了,一个类的内部修改起来能有多麻烦?
再说“如果有一天”这种句式都有预先设计的嫌疑。我习惯考虑当下需要什么,然后选择最简单直接的方式。
我也理解错了么?
#47 楼 @cloudsben PHP 组的曹同学么?
#42 楼 @freebird0221 我发现红轴不能带钢板。
if rss then email
装个 DLNA 服务器软件,搭个家庭多媒体中心。
我觉得首先要强迫自己每天晚上 23 点准时躺到床上,无论当时在做什么。然后会发现第二天比以往都更有效率,之后一旦恢复到过去晚睡的状态,就会发现第二天的效率没有早睡的时候那么高。然后就会不断的逼自己早睡。但是如果事情没做完怎么办?接下来就会强迫自己在应该完成任务的时间——比如上班时间——把事情做完,这样才能够保证早睡早起。然后形成良性循环。
另外好像保证工作高效不只是要早睡,还要注意不要让大脑缺氧,让自己别犯困。我自己是不停的喝水,白开水,我也不知道这有没效果,哈哈。还有我中午一般吃得不那么油腻,也不是很饱,好像就不需要午睡了。
以上都是自己在尝试的,也没啥科学根据,纯粹感觉。我觉得主要是,如果曾经体验过一种好的状态,之后再回到差的状态的时候,会很想再次体验那种好的状态,就会用它来诱惑自己,不断的纠正自己。
其实蝙蝠是被 hopo 咬的
换了张卡,发现不能绑定 google 钱包了。
好吧,好像又可以了。
evernote
实际点的,show 下你们的代码呗。
#26 楼 @prajnamas 呵呵,从来不烧何来退烧?挑个趁手的工具而已。
试过同事的 Filco 茶轴,我觉得比 Filco 红轴手感好,所以打算出了这个买一把茶轴。
之前是因为用过 Cherry 3496 红轴,所以决定买个 Filco 红轴。不过后来发现 Filco 红轴跟 Cherry 红轴有点区别。Cherry 的红轴按键的时候,开始阻力大,后面阻力小,这样一按下去,很容易按到底,不会有 Filco 红轴那种不知道到底按没按下去的感觉。Filco 红轴后面的阻力好像比开始的阻力大。
@Saito 刚看到一把黑色茶轴:http://www.pcwaishe.cn/thread-457989-1-1.html 比我这个新得多,私下问了一下,他说 750 包顺丰,你考虑不?