看《Thinking in Java》的一点点总结

这两天,看了《Thinking in Java》的两章:异常和方法学,以及附录B,有一点点小体会。


关于异常,一直都没怎么用,貌似就没这个概念~~  555  或许还得构建的自己的一套异常系统,所以,一直总是想想而已,没有真正的实践起来~


方法学和附录B,最想说的是:

1,让系统跑起来

2,用代码证明或者反驳你的设计

这两条相当的实用,可以奉为圣经!!!

1,再好的设计,如果系统运行不起来,也是白搭

2,很多时候总是纸上谈兵,交流辩论必不可少,但,只有真正把想法实现为代码,才能知道正确与否!一位伟人说过:“没有调查就没有发言权”,说的就是这个道理!


结合最近的一个项目,对书中方法中提到的6个阶段,也小有体会

阶段0:制定计划

阶段1:做什么?

阶段2:如何构建?

阶段3:构建系统核心

阶段4:迭代用例

阶段5:演化

Bruce把软件开OOP的开发过程总结为以上几个阶段,由于我水平有限,对于这几个阶段,我更多的是一个迭代的过程:

阶段1:做什么? 对于这个阶段,我理解为需求分析,虽然我很努力的做需求,可是,总是觉得缺什么,在开始编码的时候可以发现,这时,我只能从编码中回来理解需求。

阶段2:如何构建?类设计。和需求一样,我也很努力的根据需求进行分析,设计类。可是,或许这是我项目中最失败的地方,真正编码的时候,发现缺了好多好多的类。。。。

阶段3:构建核心系统。我的理解为,构建系统的工作流程。现在的我,也是这么开始执行。根据需求,先把系统的框架搭建出来,一步一步的满足需求和细化。

阶段4:迭代用例。这个我必须得这么做,或许全部用例我都得“迭代”。

阶段5:演化,我把这个理解为对代码重构。

阶段3是我现在的根本,按照系统的框架不断的进行重构,对我来说,或许是我现在最好的开发方法。


关于但愿你测试:

Bruce说道,“如果写不出测试,说明类的功能不明确”,非常同意。我确实是对类的职责划分和协作,没有明确的想法。

书中还说道,“首先构建测试系统”,这个虽然一直都想这么做,可是,没办法,实在做不出来。

虽然如此,但是,这次的项目中,我还是加入单元测试,哪怕是在代码出来的时候加入。


以上是我的一点点体会,欢迎大家吐槽~~


你可能感兴趣的:(代码之道)