提高复用性的编码习惯
设计编程的时候,往往根据具体的问题具体实施,而缺少提炼共性的动力。
为什么会这样,我想主要是提炼共性是一个复杂的脑力劳动,在人们追求按时完成工作之余,是否有精力去做这个复杂繁重的脑力劳动呢?
为此,我认为,一味去指责人们不去提炼复用,是没有意义的。要改善这方面的问题,可以培养一种可以提高复用性的编码习惯,这种习惯一旦养成,就可以不费劲的编写一些复用性相对较高的代码出来。
1.基于接口编程。制定一个良好的接口规范(根据调用方的需求制定),再来完成内部编码。这个隔离可以避免对实现的过多猜测,减少调用方对具体实现的依赖。
2.功能的专职化,每个接口应该只包含紧密相关的一组函数调用规格。
3.主流程调用方案,方案是一个配置工厂,配置工厂负责调用方和实现的配接工作。
4.减少不明确,模糊的定义。比如魔法数字,词不达意的标识符等。
5.可测试化。无法度量的代码是无益工程的。测试不变性,在同一个输入和状态下,会产生一组一致的状态和输出。
6.提高处理问题的规模。解决一个小规模问题和解决一个大规模问题从编码角度可能差别不多,因此要善于从一个相对大的规模去分析问题,解决问题。
待续