Ruby面试题

Python018

Ruby面试题,第1张

下面是对 Rails Interview Questions 中的

Ruby 部分的解答:

从上面可以看出,其实Proc和lambda都是 Proc 对象。

首先我们来回答第一问:怎么通过某个字段来对对象数组排序?

假设我们有一个对象数组 @users ,我们需要让他对字段 name 排序,则我们可以:

如果是在 ActiveRecord 中,则我们只需:

下面列举我喜欢的几个常用的gems及它的可替代备选方案

首先我们说明一下递归(recursive)和迭代(iterative):

递归 :一个树结构,每个分支都探究到最远,发现无法继续走的时候往回走,每个节点只会访问一次。

迭代 :一个环结构,每次迭代都是一个圈,不会落掉其中的每一步,然后不断循环每个节点都会被循环访问。

由此我们可以看出 ruby 中更加常用的选择是 迭代 ,就像 .each , .times , .map 等都是迭代循环的形式。

ruby之父,松本行弘,日本人

于 2015-03-20

火星(Firestar)火星最初是名叫拉斯特的宠物猫,他的父亲是杰克(宠物猫),母亲是肉豆蔻(宠物猫),与长鞭(Strap)、短袜(Sock)、红宝石(Ruby)是同父异母的兄弟。后来加入雷族成为学徒火爪并由蓝星指导,学徒训练结束后成为武士火心,《疑云重重》末成为副族长,《力挽狂澜》蓝星死后成为族长。他指导的学徒有炭毛、云尾和黑莓掌。他任命的副族长依次有:白风、灰条和黑莓掌。火星的第一个武士任务是把风族带回来。火星有时为了朋友或他相信是正确的事而打破守则,如和灰条去找银溪、在蓝星要攻打风族时和高星通报避免战争、给河族食物等。 在《力挽狂澜》中,他集结四个族对抗血族,杀死血族族长长鞭。在外传中,火星接受远古天族族长云星的托付,与其伴侣沙风前往北方完成了重建天族的使命,并在回族群后生下了两个女儿。火星的第一条命在《力挽狂澜》与血族族长长鞭的打斗中失去、第二条命在外传《火星的探索》与家鼠的打斗中失去、第三条命在《重现家园》把影族救回时被倒树压到而失去、第四条命是在《日落和平》在鹰霜设下圈套的狐狸陷阱中失去、第五条命则是在《暗夜长影》因为绿咳症而失去,而第六条命则是在《第四学徒》中被狐狸攻击而失去,第七条命是在《战声渐近》时和影族的一场战役中,被黄毛咬断脖子而失去,第八条命是在《群星之战》中与虎掌搏斗而失去。火星在《群星之战》中彻底杀死虎星的灵魂后被一根燃烧的枝条打死而加入星族。火星和伴侣沙风有两个女儿:松鼠飞和叶池。蓝星(Bluestar)蓝星是只蓝灰色的蓝眼母猫,淡银色的口鼻和尾巴,火星前的雷族族长。她决定把火星带进森林。她是位冷静公平的族长。蓝星的武士名是蓝毛,和河族的橡心相恋,生下了三个孩子。由于当时的副族长褐斑打算退休,而蓝毛要阻止好战的蓟掌成为副族长,只好将2个孩子送到河族(小苔藓冻死),当上副族长,后当上族长。 蓝星最初选红尾为副族长,后红尾被虎星谋杀,第二任副族长狮心在当上副族长后不久在影族的战斗中牺牲,蓝星又选择了虎掌,虎掌在《疑云重重》末背叛,谋杀蓝星,被火星发现,虎掌便被蓝星流放。蓝星因为信任的副族长背叛自己,开始不信任族猫,精神失常,并向星族宣战,直到《险路惊魂》末蓝星恢复理智,为了引诱野狗而掉落悬崖死亡。蓝星原来老师是石毛,因石毛在与风族的战斗中重伤,老师变为日星,学徒为霜毛、奔风和火星。蓝星的母亲在为月花,父亲是暴尾,伴侣是河族的橡心,姐姐是雪毛,幼崽是石毛、小苔藓、雾星。也是火星在接受第九条命的猫。黑莓星(Bramblestar)虎星的儿子,武士名为黑莓掌,有妹妹褐皮和同父异母的弟弟鹰霜、妹妹蛾翅,松鼠飞的伴侣,曾多次因为父亲虎星而遭受对群族忠诚的质疑,最后终于证明自己有能力在灰条失踪后担任副族长的职位。星族选中的四只猫之一,带领着六只猫去见獾午夜,聆听午夜的消息,并参加了拯救急水部落的行动。后带着四大群族一起找到了新家。虎星在梦中训练黑莓星和弟弟鹰霜,想让他统治雷族、风族,但黑莓星对族群忠心耿耿(接受训练的原因是为了成为一名优秀的武士,想成为副族长是希望用自己的努力成为,他不清楚父亲的阴谋),最后杀死了野心勃勃的鹰霜。 黑莓星抚养的孩子有冬青叶、狮焰和松鸦羽,但他们其实是叶池和鸦羽的孩子。 在《拂晓之光》中对于松鼠飞帮叶池隐瞒叶池怀孕的事情愤怒而和松鼠飞关系破裂。四部曲末与黑森林的战斗结束后当上了族长,副族长为松鼠飞,从语气上可以看出已经基本上原谅。雷星、枭星、红星、松星、日星、蓝星、火星、黑莓星

1,Ruby Rose

RWBY队长,亦是本作的主角。有点天然呆,好奇心旺盛,并且敢于尝试各种大胆新奇的事物。古道热肠、富有正义感,对外人保持着友善关怀的心,能轻易打开胸怀接纳每一个人成为朋友和伙伴。

很崇拜猎人和他们的生涯,并期望自己在将来能入学信标学院、成为一名女猎人。因为奥兹平校长表示“作为领导者,就必须要做到最好”而用心学习,以及努力合络团队中的同伴情谊。喜欢吃草莓、看武器杂志,并且似乎比较喜欢认识新武器而不是它们的主人。习惯戴着眼罩睡觉。

2,Weiss Schnee

RWBY队成员之一,雪倪尘晶公司的女继承人。日常行事和战斗风格都中规中矩,但也能保持变通而不至陷于困境,知识与见识也是最高的。性格傲娇、毒舌(特别是对Ruby和Yang),对外人表现排斥、颐气指使的态度,并喜欢和有能力的人为伍。

当被认为是同伴和朋友之后就会打开心胸,在同伴有危险时更会毫不犹豫地挺身而出。喜欢冬天和蓝莓酸奶冰淇淋。曾经表白自己作为一名继承人所背负的压力与枷锁,以及因为“白牙”对公司的破坏而承受着父亲的怒气。

3,Blake Belladonna

RWBY队成员之一,由第15话得知她不是人类,而是被称作Faunus的弗纳人一族,自幼为“白牙”(White Fang)组织的成员,后因为对“白牙”的暴力手段不满而退出。

4,Yang Xiao Long

RWBY队成员之一,Ruby的同父异母姐姐。热血、剽悍、开放、健谈,典型的女汉子。极具个人特色。很重视Ruby,为了保护Ruby可以不顾自身安危。相当在乎自己的头发,若是因为外力因素(例如战斗)而掉落的话就会大暴走。

5,Professor Ozpin

信标学院的校长,名字源自绿野仙踪的角色。总是拿着手杖与一个马克杯。在暗中使用卷轴板观看Ruby的战斗动作并了解其情况后,让Ruby越级升入信标学院。