/ Ruby

[视频] 罗马数字Kata Ruby版


最近这两个月一直在坚持每天做Kata练习,有不少的收获。我会挑一些比较有意思的做成视频发出来,也算是Kata接力的继续吧。

很巧这次做的Kata练习依然还是罗马数字,只不过上次用C#,这次换成了Ruby。另外,这几天学习了一种新的解法,不同于之前的递归,代码也相对简洁。

以前的做法多是放弃提取1到10之间的规则,直接使用字典。这个做法就是尝试发现1到10之间的规则,将4和9作为特例处理。充分利用了罗马字母叠加的逻辑。

在TDD过程中,不断使用愚蠢的办法制造重复,然后再重构的过程中,通过不断抽象重复推进代码演化。这个练习中Case的选择并没有体现出来,只需自然的顺着数字前进,因为数字顺序与逻辑演化方向是大概一致的,所以不会出现case路径选择问题。

 

第一次在Mac上录视频,还第一次献“声”,有点小紧张。

使用的工具:

  • Ruby 1.9.3
  • RSpec
  • Sublime Text 3
  • Sublime Package:Ruby Test
Jackson Zhang

Jackson Zhang

Odd-e敏捷教练,主要涉及组织,团队,产品,技术,工程实践等,曾为多家知名企业提供教练与培训服务。译有《用户故事与敏捷方法》,《.NET单元测试的艺术》和《实例化需求说明》。擅长工程实践(如测试驱动开发,单元测试,重构,持续集成等),产品探索(Impact Mapping,Pretotyping,Lean Startup等)与团队协作。zbcjackson AT gmail.com

Read More