chapter8 Pull Complexity Downwards

探讨了如何通过减少配置参数来降低系统复杂性。配置参数允许用户调整接口行为,但在某些情况下,系统能自动计算更优参数。文章强调了减少配置参数的重要性,并建议在可能的情况下,让系统自动确定参数值。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Pull Complexity Downwards

这章主要讨论如何创建一个更深的类

例子:配置参数

接口提供一些会控制接口行为的参数,比如缓存的大小或者是请求重试的次数。
接口的使用者必须提供参数合适的值
支持使用配置参数的人回收配置参数允许使用者来根据特定的需求来调整参数,从而影响接口的行为。在一些情况下,对于底层的代码来说,不知道最佳的执行方案,而接口的使用者会更加清楚。
但是,在一些场景下,对于接口的使用者来说,很难确定最佳的参数取值;另外对于一些参数,可以通过在方法中多添加一点儿代码来自动确定参数的取值。
比如对于一个网络协议,必须处理丢包的问题。如果发送一个请求,过了很久都没有收到响应,那么需要重新发送请求。一种确定重试间隔参数取值的方法是引入配置参数。然而,传输协议是可以自己来确定这个参数的取值的,比如计算请求成功返回响应的时间,然后将该时间的倍数作为该参数的取值。这种自动计算的好处就是可以动态地改变,而手动指定参数值的方法可能会指定一个不适合当前环境的参数取值
因此应该尽量少地使用配置参数。当暴露一个配置参数的时候,我们应该问问自己用户是否能够指定一个比我们指定的取值更好的参数取值。当我们指定一个配置参数的时候,考虑系统是否能够自动计算一个参数的取值。
理想上,一个系统应该完全解决一个问题,而使用配置参数,会导致无法完全解决这个问题,从而增加系统的复杂性

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值