浅析设计模式的威力.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
浅析设计模式的威力.doc

浅析设计模式的威力   【摘 要】随着社会的发展,信息的高速膨胀,软件的规模已经非常庞大。良好的架构能较好的应付软件使用过程中的修改和扩充功能,从而降低软件的使用成本。好的架构需要科学的指导思想,设计模式提供了软件设计的指导思想和实现思路,在软件开发中发挥着越来越重要的作用,现在软件的精髓就在架构!   【关键词】设计模式;重构;软件维护;软件工程   随着社会的发展,信息化告诉发展。最为信息化载体的软件其规模也是与日俱增。软件的发展和建筑的发展有着很强的可比性。在历史上可能没有建筑工程学,建筑工程学也是到建筑规模发展到一定的规模以后才出现的,强调框架的搭建与设计。同样的问题出现于软件,现在软件的规模也得到极大扩充所以出现了软件工程!甚至很多人戏称,搞软件的叫IT民工!   建造一个小茅屋可能就是建筑的雏形,那时可能凭个人或者少数几个人的力量便可以完成一个任务。但是一个皇朝的宫殿可能就非一己之力可以完成的了。那么在软件早期可能一个人在不长的时间里就可以完成一个简单的小软件。但是现在社会信息高度流通与集成,一个软件要考虑诸多方面的因素,便非一己之力可以完成。所以软件工程有了产生的必要。   在建筑学方面就出现了诸多的设计样式,方便后人使用和扩展。在软件工程中也有诸多的框架,帮助软件工程师迅速搭建一个软件的大体形态!到此为止软件和建筑具有很强的相似性。   但是软件毕竟是软件,在实际的开发和使用中有自己的特点和要求。比如建筑的修改可能局限于其外部形态,不能随意修改。但是软件从理论上讲却可以”恣意妄为”。当然我们应该尽量避免这种情况的发生!凡事皆有度,一个设计良好的软件可以很轻松的拓展他的功能需求。这些要求是经常出现的,因为在软件业就存在着需求分析才是软件的难点,售后维护是重点的特点。因为人们往往发现定制的软件不是非常符合自己的要求,因为难在需求分析时的交流,而软件开发方也发现客户往往很”难缠”,在维护时期经常要求对功能进行修改或者扩充。维护往往占用了软件使用周期的大部分时间。   尤其是软件规模过于庞大的时候频繁的更改往往让软件开发商疲于奔命,直至项目的崩溃!这个就像是客户和开发商之间的过招,客户发招开发商就要接招。开发商是逼迫接招,这是其工作性质使然,只得接受。所以开发商很想练就一身过人本领以至能从容应招。所以在软件的行业中也出现了一套独孤九剑----设计模式!   我们知道在独孤九剑中有总决式、破剑式、破刀式、破箭式、破索式、破枪式、破鞭式、破掌式、破气式其中每式又各有变化。而在设计模式中却有三种大的方向创建型模式、行为型模式、结构型模式。其中各式也各有组成。独孤九剑以制敌为目的,而设计模式以良好的架构为目的!   良好的架构要有以下特点:   第一便于功能的拓展!满足这个特点便可以轻松应付客户对功能进行拓展的要求!   第二便于部件的更改,因为随着客户业务的增长可能对以前的一些部件进行更换,最常见的便是数据库的更换。如在客户使用之处业务量较小使用了Access数据库,但是业务量增大后数据库出现了问题需要更改为Oracle数据库,所以设计软件应考虑好这些因素。   武术讲究内外兼修,武术的高低有其招数的精妙和内力的深厚决定。御敌于先机的招式和深厚的内力决定了武术的必胜把握。同样设计模式中有其良好的架构样式和科学的指导思想决定了软件的鲁棒性!   一 内功篇:   在创建模式、结构模式、行为模式的背后也有设计模式的内功心法,它们相当于武术中的至高内功易筋经(单一职责、开放封闭、合成聚合复用)和乾坤大挪移(依赖倒转、里氏转换)心法。   单一职责就是每个类的功能要单一。避免因为某个职责需要改变去修改类而导致其余职责也受到影响!此原则可以避免出现不必要的麻烦!   开放封闭原则就是对拓展开放对修改封闭,你可以增加类拓展原来的功能而尽量避免到原来的类中去修改。该原则对于不同人去修改一个软件有很好的支持。后者不必关心原来的类而只要拓展自己的类即可实现功能拓展的目的。   合成/聚合复用原则就是应尽量避免集成而用合成或者集成来完成对应的功能。这样的话避免父类中的修改影响到子类。   依赖倒转原则是指高层不依赖低层,二者都依赖抽象,抽象不依赖细节,细节依赖抽象。   依赖倒转原则功能很强大,如果没有依赖倒转原则,小李飞刀就只会使用飞刀没有了飞刀便只有挨打的份了。但是实际上李寻欢曾经用林诗音的银钗做飞刀杀死过敌人。那么李寻欢使用的就是依赖倒转原则。李寻欢的武功宗旨是制敌,这个方法是一个抽象的借口借口里要实现的抽象方法就是投掷武器,飞刀实现投掷就是飞刀,银钗当然也可以实现投掷的功能!如果没有这个特点那就是在有些单纯的可爱了!   里氏转换原则就是调用中父类的地方调用子类也是可以的。比如一个地方处理

文档评论(0)

guan_son + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档