分离变与不变——软件设计的基本原则分析

分离变与不变

                                                                                                                                                       ——软件设计的基本原则分析

 

        小到代码,大到模块、系统,我们都可以将其粗略的分为两个部分:变化的部分和不变的部分。有些代码,不管是维护人员来了、走了,还是版本换了、变了,它依然是那样。可怕的是另一部分,它们在不停的变化,每个新来的菜鸟都要去改一下,每个新的版本,它们都要动一下,总是让人头疼不已。更可怕的是变化的部分和不变的部分始终都纠结在一起,欲拆不能,强拆不忍,每次小小的改动都要牵连到一大片,修改这样的代码、模块,相当于将自己推入“焦油坑”,退拔皆不能,其中的痛苦只能敲掉门牙往肚里吞。

分离变与不变,是软件设计的一个基本原则。其背后蕴藏着丰富的软件工程思想,例如:信息的分装与隐藏、系统的模块化、使用分层构架等等等。其中“变”是指易变的代码或者模块,当然,“不变”就是指系统中不易变化的部分。无论是开发人员还是设计人员,使用这条原则,都可以带来可观的收益,且看以下两个本人体会到的实例。

一、代码危机

          在此,我们将一个开发员维护的代码总量看作是100,如果这些代码没有使用变与不变分离的原则,只是为了完成一定的功能而凑合在一起,那么他维护的总的代码量可能是100。实际上,代码可以分为3个部分:大概50%是不变的部分&#

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值