Why I use X2O

#X2O#project progress
at

啊! 不知道什么时候看到一本书上面写的这么一个内容, 那就是 x2o.

what is X2O?

X2O 是一个很有趣的经验, 是指一个dev每天只准备两个 feature, 可能是两个大 feature, 也可能是两个小 feature, 最后进行一次 refactor.

  • x: for feature
  • o: for optimization.

why X2O

那么使用 X2O 可以解决这两个问题.

X2O 可以控制步调

在开发某一个feature的时候, 尤其是在开发新项目的时候, dev很难搞清楚那些方法应该共用, 那些API调用顺序究竟如何更完美. 那么合理的分割粒度, 控制在每天两个=feature=有助于dev保持合理的节奏感. 这种措施将会使得整个项目/某个模块保持紧凑, 并且方便下一次的更改.

多想, 少写

写代码是一个很耗费生产力的过程. 有些人会想得太多, 很简单的一个任务抽象了n层, 最后花了许多倍的时间最终还是修改回来. 保持两个feature有助于 dev 集中注意力在完成上面, 这样就不会想得太多, 以至于忘记了最终的目的是什么.

大局观

事实上 dev 是一个很容易集中注意力去写代码, 但是在写代码时不断深度优先分散掉注意力, 一会就深入到忘记之前考虑的东西了. 只见树木, 不见丛林. 那么如果保持x2o, 这样有助于保证程序员粒度化逻辑和代码.

先想, 再写

x2o使得一个=dev= 必须保证在一天完成两个feature, 粒度足够小, 使得抽象层保持在feature的论述阶段, 不会发生在实现阶段. 并且依赖issue 去做内容, 更多的依赖仔细的思考而不是下手就写出一大片代码.

成就感

很少有项目可以说是2-3天就可以完成的, 一般都是1个月左右, 甚至1-2年, 那么如果没天写, 不停的写, 那么很快dev自己就已经迷失了. 如果能够每天完成1-2个feature, 那么将会给工程师本身带来无与伦比的成就感.

更容易写测试

因为更具有逻辑并且很细致, 那么很容易在确定逻辑的前提下写出合理的测试. 使得代码更稳健

« Test-Driven Development On Richard