Tod*_*ses 9 language-agnostic debugging
背景:
一位美术老师曾经给我一个设计问题,只用了3行画虎.我的想法是,我研究一只老虎并学习三条线来吸引人们仍然能够说出它是一只老虎.
这个问题的解决方案是从一只老虎的全部绘图开始并删除元素,直到你到达最容易识别为老虎的三个部分.
我喜欢这个问题,因为它可以应用于软件开发等多个学科,特别是在消除复杂性方面.
在工作中,我处理的是维护一个被黑客入侵的大型软件系统,并且变得无法维护.我的工作是消除过去开发人员造成的繁琐复杂性.
问题:
是否存在一个用于消除软件系统复杂性的固定流程 - 一种应用于该问题的简化流程模板?
看看Martin Fowler 的书Refactoring,以及他的http://www.refactoring.com/网站.
Robert C. Martin的Clean Code是另一个降低代码复杂性的好资源.
不幸的是,与老虎画的比喻可能效果不佳.只有三条线,观众可以想象其余的.在软件系统中,所有细节都必须存在.如果不删除必要的东西,通常不会带走太多.
查看一本关于从糟糕(或适应不良)设计转向更好的整个主题的精美书籍的Anti-Patterns一书.它提供了从软件系统中常见的大量问题中恢复的方法.然后我会支持克里斯托弗关于重构的建议作为重要的第二步.
| 归档时间: |
|
| 查看次数: |
1463 次 |
| 最近记录: |