legacy code是目前很多公司面临的问题,就是这些code有用但是需要很多精力或者程序员去学习才能维护。 比如说你自己三年前些的代码,因为文档不完全而现在自己都几乎看不懂了,也是legacy code的一种。
一个比较好的处理办法是对code加上测试, 针对rails代码来说:
1. 看database schema
2. 看class之间的联系, ruby有个gem是专门生成这个的
3. cheat: 插入test,边学边测: 参考 screencast 8.3.1, at screencast.saasbook.info
4. method-level refactoring: reek , flog => quantitative metrics
5. refactoring 的书,在ppt里。
6. code metrics.