《代码整洁之道》——(7)边界

《代码整洁之道》——(7)边界


目录

《代码整洁之道》——(7)边界

7.1、使用第三方代码

7.2、学习性测试

7.3、使用尚不存在的代码

7.4、整洁的边界


7.1、使用第三方代码

在接口提供者和使用者之间,存在与生俱来的张力。第三方程序包和框架提供者最求普适性,这样就能在多个环境中工作,吸引广泛的用户。而使用者则想要集中满足特定需求的接口。这种张力会导致系统边界

上出现问题。

如果你使用类似Map这样的边界接口,就把它保留在类或近亲类中。避免从公告API中返回边界接口,或将边界接口作为参数传递给公告API。

7.2、学习性测试

无论如何我们都得学习要使用的API,而编写测试则是获得这些知识的容易而不会影响其他工作的途径。学习性测试是一种精确实验,帮助我们增进对API的理解。

7.3、使用尚不存在的代码

还有另一种边界,那种将已知和未知分割开的边界。在代码中总有许多地方是我们知识未及之处。有时,边界那边就是未知的(至少目前未知)。有时,我们并不往边界那边看过去。

7.4、整洁的边界

边界上会发生有趣的事。改动是其中之一。有良好的软件设计,无需巨大投入和重写即可进行修改。在使用我们控制不了的代码时,必须加倍小心保护投资,确保未来的修改不至于代价太大。

边界上的代码需要清晰的分割和定义了期望的测试。应该避免我们的代码过多地了解第三方代码中特定的信息。依靠你能控制的东西,好过依靠你控制不了的东西,免得日后受它控制。

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值