软件模块的3项职责

“大千世界中,唯一缺乏的就是人类的注意力。”——凯文•凯利
要使软件易于阅读和修改,所需要的不仅仅是一些原则和模式。还需要你的注意力,需要纪律约束,需要创造美的激情。

每一个软件模块都有三项职责。

  1. 功能职责(是否完成了功能?)
    它运行起来所完成的功能,这也是该模块得以存在的原因。

  2. 变化职责(是否能够应对变化?)
    它要应对变化,几乎所有的模块在它们的晟敏周期中都要变化,开发者有责任保证这种改变应该尽可能简单。一个难以改变的模块是拙劣的,即时能够工作,也需要对它进行修正。

  3. 交流职责(换一个人,是否可读?)
    要和阅读它的人进行沟通。对该模块不熟悉的开发人员应该能够比较容易地阅读并理解它。一个无法进行沟通的模块也是拙劣的,同样需要对它进行修正。

小知曰:好的模块一定是符合“开放封闭原则(OCP,Open Closed Principle)”的,即:对扩展是开放,而对修改是封闭。


我的微信公众号:一一小知(yiyixiaozhi)。
一一小知

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值