设计模式

学了一部分的设计模式,这是通过两个人的对话来进行探讨一下真正的程序是应该怎么写出来的。我们以前的马马虎虎的写程序就是为了能实现就行了,什么冗余呀、健壮性呀等等,都没有考虑进去,可以说是敷衍了事……
    牵一发而动全身( 开放-封闭原则 :我们通过学习了设计模式之后,起码知道了两个原则“开放-封闭原则”、“依赖倒转原则”;我们来讨论一下开放-封闭原则;开放封闭原则要求类、模块以及功能对扩展是开放的,对修改是封闭的,一个对象一旦被定义好,并公开给其他对象调用,我们就不能轻易地修改它。 这里所谓的"修改",可以分为两个层次来分析。一个层次是对抽象定义的修改,如对象公开的接口,包括方法的名称、参数与返回类型。我们必须保证一个接口,尤其要保证被其他对象调用的接口的稳定;否则,就会导致修改蔓延,牵一发而动全身。
     将对象不变的部分封装起来 从某种程度上讲,接口就是标准,要保障接口的稳定,就应该对对象进行合理的封装。 由于我们对扩展实现了开放,才能够保证对修改是封闭的。开放利用了对象的抽象,封闭则在一定程度上利用了封装。最佳的做法仍然是要做到分离对象的变与不变,将对象不变的部分封装起来,并遵循良好的设计原则以保障接口的稳定;至于对象中可能变的部分,则需要进行抽象,以建立松散的耦合关系。实际上,开放封闭原则也体现了依赖倒置原则的思想。

      依赖倒转原则抽象不应该依赖于细节,细节应当依赖于抽象。优点:系统扩展灵活。缺点:需要大量的类。

评论 13
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值