开篇—-面向对象的设计原则与设计模式

        设计模式是前人总结的解决某特定场景的设计问题的方法,就像武学中的一招半式,说白一点就是解决某些问题的惯用法,人们也都把关于“重复发生的问题的描述和解决办法”统称为模式。

        “模式”这个词是不局限于软件开发行业的,它几乎无处不在,它其实就是一种经验的积累,目前比较流行的是GOF23种经典设计模式。

        比设计模式更重要的是设计原则。如果说设计模式是武学的招式的话,那么面向对象的设计原则就是武学中的心法。设计原则是指导思想,是牵引,有了这些原则,才让人们比较容易的去衡量哪些是好的设计,哪些是不好的设计。如果没有先理解设计原则去学设计模式,就无法理解那些模式为什么要那么设计,你只能死记硬背,只能学到其形,无法领会其神。

        记得当初刚参加工作不久时,设计模式开始流行,于是乎也学了学那23种设计模式,一点感觉都没有,自己也不是那种死记硬背的料,所有后面直接放弃了。后来外接触了面向对象的设计原则,看起来还不错,就开始研究,并在后面的工作中不断的应用,不断的改进以前代码的设计,发现自己的代码的重用度与扩展性能明显提高了。很久之后才又去看那23种设计原则,发现很多自己以前都不知不觉中用过了,其他的模式理解起来也容易多了。

        以前曾经有人提过这样的问题:面向对象软件设计语言的三大特性:封装性、继承性、多态性,你认为哪个最重要、最有用的特性。大多初学者都会认为继承性是最重要的,这种答案说明他还处在面向对象设计的初级阶段,真正最有用的是多态,看看那些设计原则与设计模式,都是需要多态的特性来实现的。

        不管是设计模式,还是设计原则,解决的主要是软件的复用以及可扩展性问题。低耦合高内聚、对修改关闭,对扩展开放是软件设计的终极目标,其所有的设计原则和设计模式都是为这两条服务的,在后续的文章中将陆续总结这些设计原则与模式。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值