高扩展的诀窍:参数化设计,让外部通过参数控制工作方式

本文导航

  1. 真正的好处
  • 作者:KK

  • 发表日期:2016.5.25


参数化设计就是指函数/方法合理地提供参数表,内部逻辑根据这些参数进行具体的工作,而由于参数可以从外部传递进来,所以就是等于外部可以控制内部的工作方式,大家都很清楚我们能用各种函数方法做事就是因为这些函数都提供了操作参数,我们根据功能传递不同参数即可

我想这个道理大家都明白的,但是实际工作上我发现有些人的确有将代码逻辑一层一层地分开封装了,但根本没有什么参数表,直接引用的外部变量/外部对象这些,造成了较高强度的代码耦合,一旦外部数据被修改就波及了很多范围

如果使用参数化设计,可以在适当的层面将数据修正并继续往后面传递,还可以方便地模拟数据而无须理会外部数据


最后就是可扩展性的问题,如果你写死了调用外部数据进行计算,那未来别人进行扩展开发时也想做类似的功能却无法将他的数据以参数的形式传递进来计算,此时就会产生以下情况:

  1. 他看到你的代码挺多的,不敢乱动,于是他自己另外新开了一个函数做相同的事,只是读了不同的数据,代码几乎相同

  2. 他直接将你代码依赖的外部数据赋值为他的数据,看上去运算正常,但这是少见的案例,并且他一定是个新手


真正的好处

形成参数化设计的习惯,其实是个人编程能力上升的又一境界,参数化与不参数化的程序员思想是很大差异的,参数化设计者看待软件工程会更加宏观,所设计出来的东西更加稳定,可维护以及好扩展