目录
方法为何要有参数?
长参数列表的问题
解决方案
聚沙成塔
动静分离
告别标记
总结
有经验的程序员应该都见过,一个方法坐拥几十上百个参数。

方法为何要有参数?
因为不同方法间需共享信息。

但方法间共享信息的方式不止一种,除了参数列表,还有全局变量。但全局变量总能带来意外惊喜,所以,取消全局变量也是各大语言的趋势。

但方法之间还是要传递信息的,不能用全局变量,于是参数就成了唯一选择,于是,只要你想到有什么信息要传给一个方法,就会直接它加到参数列表中,参数列表也越来越长。

长参数列表的问题
参数列表过长,你一个 crud 程序员就很难完全掌控这些逻辑了呀!

所以症结是数量多,解决关键也就在于降低参数的数量。

解决方案
聚沙成塔
一个简单的创建博客的方法:

参数列表包含了一篇博客所要拥有的各种信息,比如:博客标题、博客简介、封面 URL、博客类型、博客归属的专栏、主角姓名、博客标签、博客是否完结…

如果只是想理解逻辑,或许你还会觉得参数列表挺合理,毕竟它把创建一篇博客所需的各种信息都传给了方法,这也是大部分人面对一段代码时理解问题的最初角度。
虽然这样写代码容易让人理解,但这不足以让你发现问题。

现在产品要求在博客里增加一项信息,标识这部博客是否是签约博客,也就是这部博客是否可收费,咋办?

很简单啊!我直接新增一个参数。很多屎山就这么来的,积少成多,量变引起质变!

这里所有参数都是创建博客所必需的。所以,可以做的就是将这些参数封装成一个类,一个创建博客的参数类:

这样参数列表就只剩下一个参数了:
所以, 将参数列表封装成对象吧 !

只是把一个参数列表封装成一个类,然后,用到这些参数的时候,还需要把它们一个个取出来,这会不会是多此一举呢?就像这样:

更多相关文章

  1. 1. 变量,常量的区别; 2. 函数的种类与参数类型; 3. 作用域与闭包
  2. 1. 实例演示解构赋值,特别是函数参数中使用解构的方式2. dom元素
  3. box-sizing、伪类选择器参数及媒体查询的应用
  4. 使用rest参数自定义求和函数
  5. 1. box-sizing属性解决了什么问题?2. 伪类选择器的参数 an+b的经
  6. box-sizing的作用+伪类选择器的参数 an+b 的应用+媒体查询:@media
  7. 五分钟学会获取一千条锚文本外链技巧
  8. 你知道 JavaScript 中的 Arguments 对象都有哪些用途吗?
  9. 如何对接口参数的描述进行集中管理

随机推荐

  1. android ndk 开发之 在 应用程序中使用 j
  2. [置顶] android调用第三方库——第二篇—
  3. Relativelayout的一些属性
  4. Android摄像头照相机技术-android学习之
  5. Android XMl文件中tools前缀
  6. android Textview过长时显示省略号
  7. Android程序反编译的方法[已更新]
  8. Android 内存管理机制
  9. Android API课程1: Application Fundament
  10. Android优秀开源项目收集