电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

C_Net设计模式实例系列文章总结

10页
  • 卖家[上传人]:夏**
  • 文档编号:481514307
  • 上传时间:2022-09-01
  • 文档格式:DOC
  • 文档大小:102KB
  • / 10 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 1、c#Net设计模式实例系列文章总结1什么是设计模式正如一The设计模式是对在软件设计过程中重复出现的问题提出了一种比较好的解决方案。位专家所说:设计模式是对程序设计人员经常遇到的设计问题的可再现的解决方案(SmalltalkCompanion)。GOF设计模式通常被认为是其他设计模式的基础,随着业务复杂度的增大,会不断涌现新的设计模式,而这些新的设计模式一般会以GOF模式理论为参照。2为什么要学习设计模式从个人职业规划来考虑。一位软件开发工程师随着编码量的增加,开发经验的增加,件理论理解的加深,会不由自主地想一些方法或者捷径,来提高自己的生产率,而不是面对重复的问题做相同的工作,当你有这种想法的时候,就需要开始学习设计模式,设计模式会给你一些比较好的解决方案,不但解决了问题也提升了自己的能力,同时也是迈向软件设计师和架构师的过度阶段。从软件架构的角度来考虑。经济的快速发展造就了业务越来越复杂,那么如何使软件适应这种复杂的业务变化,在软件设计和架构时,适当地使用设计模式可以解决此问题,也要注意不要过度使用设计模式,否则会使系统变的更加复杂。设计模式也是代码重构的依据和工具,建议在代码的重

      2、构时,尽量融入设计模式。设计模式原则提高代码复用率,使用设计模式的根本原因是适用变化,展性。需要遵循以下几个原则:单一职责原色、开放封闭原则依赖倒置原则、里氏代换原则。使软件更具有可维护性和可扩(OpenClosedPrincipal)、3.1单一职责原则就一个类而言,应该只有一个引起他变化的原因。如果一个类承担的职责过多,就等于把这些职责耦合在一起,一个职责的变化可能会消弱或者抑制这个类完成其他职责的能力。这种耦合会导致脆弱的设计,当变化发生时,设计会遭受到意想不到的破会。3.2开放封闭原则软件实体(类、模块、函数等)应该可以扩展,但不可以修改。也就是说对扩展是开放的,对修改是封闭的。一般来说,面对需求,对程序的改动是通过添加新代码进行的,而不是更改现有代码。3.3依赖倒置原则抽象不应该以来细节,细节应该依赖抽象,也就是提倡的实现编程”。也可以这样理解:高层模块不应该依赖底层模块,两个都应该抽象;抽象不应该依赖细节,细节应该依赖抽象。3.4里氏代换原则子类必须能够替换掉他们的父类型。也就是说,在软件开发过程中,子类替换掉父类,程序的功能行为没有变化。只有当子类可以替换掉父类,类才能真

      3、正被复用,而子类也可以在父类的基础上增加新的行为。4设计模式四个基本要素设计模式使人们可以更加简单方便地复用成功的设计和体系结构,成设计模式也会使新加入的系统开发者更加容易理解其设计思路。模式名称、问题、解决方案和效果。4.1模式名称一个助记名称,用来描述设计模式、解决方案和效果。上进行设计。基于一个模式词汇表,开发团队之间可以讨论模式并在编写文档时使用它们。模式名称可以帮助我们思考,“面对接口编程,而不是面对软件单位的功能不受到影响时,父将已证实的技术表述设计模式的基本要素包括设计模式允许在较高的抽象层次也是设计模式编目工作的难点之一。便于团队成员交流设计思想及设计结果。找到合适的模式名称4.2 问题问题主要描述在何时使用设计模式。它解释了设计问题和问题存在的前因后果、特定的5.1.2Net设计模式实例之抽象工厂模式(AbstractFactoryPattern)5.1.2Net设计模式实例之抽象工厂模式(AbstractFactoryPattern)设计问题和怎样用对象表示算法等。通常情况下,模式必须满足的一系列先决条件是问题。4.3 解决方案解决方案描述了设计的组成成分、它们之间

      4、的相互关系及各自的职责和协作方式。因为模式就像一个模板,可应用于多种不同场合,所以解决方案并不描述一个特定具体的设计或5.1.2Net设计模式实例之抽象工厂模式(AbstractFactoryPattern)5.1.2Net设计模式实例之抽象工厂模式(AbstractFactoryPattern)(类或对象组合)实现,而是提供设计问题的抽象描述和怎样用一个具有一般意义的元素组合来解决这个问题。4.4效果5.1.2Net设计模式实例之抽象工厂模式(AbstractFactoryPattern)5.1.2Net设计模式实例之抽象工厂模式(AbstractFactoryPattern)式效果,描述了模式应用的效果及使用模式权衡的问题。但它们对于评价设计选择和理解使用模式的代价及优势具有重要意义。尽管描述设计决策时,并不是总提到模软件效果大5.1.2Net设计模式实例之抽象工厂模式(AbstractFactoryPattern)5.1.2Net设计模式实例之抽象工厂模式(AbstractFactoryPattern)多关注对时间和空间的衡量,它们也表述了语言和实现问题。因为复用是面向对象设计的

      5、要5.1.2Net设计模式实例之抽象工厂模式(AbstractFactoryPattern)5.1.2Net设计模式实例之抽象工厂模式(AbstractFactoryPattern)素之一,所以模式效果包括它对系统灵活性、扩充性或可移植性的影响,显式地列出这些效5.1.2Net设计模式实例之抽象工厂模式(AbstractFactoryPattern)5.1.2Net设计模式实例之抽象工厂模式(AbstractFactoryPattern)果对理解和评价这些模式很有帮助。设计模式分类5.1.2Net设计模式实例之抽象工厂模式(AbstractFactoryPattern)5.1.2Net设计模式实例之抽象工厂模式(AbstractFactoryPattern)设计模式主要分为创建性模式(CreationalPatterns)、结构性模式(StructuralPatterns)、行为性模式(BehavioralPatterns)。5.1.2Net设计模式实例之抽象工厂模式(AbstractFactoryPattern)5.1.2Net设计模式实例之抽象工厂模式(AbstractFactor

      6、yPattern)5.1创建性模式(CreationalPatterns)5.1.1Net设计模式实例之简单工厂模式(SimpleFactoryPattern),简单工厂模式(SimpleFactoryPattern)的优点是,工厂类中包含了必要的逻辑判断,根据客户端的选择条件动态实例化相关的类,对于客户端来说,去除了与具体产品的依赖5.1.2Net设计模式实例之抽象工厂模式(AbstractFactoryPattern)抽象工厂模式(AbstractFactoryPattern,提供一个创建一系列相关或者相互依赖对象的接口,而无需制定他们的具体类。抽象工厂模式的典型应用就是,使用抽象工厂反射+配置文件实现数据访问层程序5.1.3 Net设计模式实例之单例模式(SingletonPattern)单例模式(SingletonPattern),保证一个类只有一个实例,并提供一个访问它的全局访问点。单例模式因为Singleton封装它的唯一实例,它就可以严格地控制客户怎样访问它以及何时访问它。5.1.4 Net设计模式实例之建造者模式(BuilderPattern)建造者模皿BuilderP

      7、attern),将一个复杂对象的构建与它的表示分离,使的同样的构建过程可以创建不同的表示。建造者模式是在当创建复杂对象的算法应该独立于该对象的组成部分以及他们的装配方式时适用的模式5.1.5 Net设计模式实例之原型模式(PrototypePattern)原型模式(PrototypePattern):用原型实例指定创建对象的种类,并通过拷贝这些原型创建新的对象。Specifythekindofobjectstocreateusingaprototypicalinstance,andcreatenewobjectsbycopyingthisprototype。浅复制与深复制区别:浅复制,被复制的所有变量都还有与原来对象相同的值,而所有的对其他对象的引用都仍然指向原来的对象。深复制,把引用对象的变量指向复制过的新对象,而不是原有的被引用的对象。Net命名空间System提供了一个IConeable接口,此接口只有一个方法Clone(),只需要实现这个接口就可以实现原型模式(PrototypePattern)了5.2结构性模式(StructuralPatterns)5.2.1 Net设计模式

      8、实例之适配器模式(AdapterPattern).适配器模式,将一个类装换成客户期望的另外一个接口。Adapter模式统一了不兼容对象的接口,使的原本由于接口不兼容而不能工作的那些类可以一起工作。5.2.2 Net设计模式实例之桥接模式(BridgePattern)桥接模式(BridgePattern),将抽象部分与它的实现部分分离,使的抽象和实现都可以独立地变化。Decoupleanabstractionfromitsimplementationsothatthetwocanvaryindependently.。什么是聚合/组合:聚合(Aggregation),当对象A被加入到对象B中,成为对象B的组成部分时,对象B和对象A之间为聚合关系。聚合是关联关系的一种,是较强的关联关系,强调的是整体与部分之间的关系。5.2.3Net设计模式实例之组合模式(CompositePattern)组合模式,将对象组合成树形结构以表示“部分-整体”的层次结构,组合模式使得用户对单个对象和组合对象的使用具有一致性。解决整合与部分可以被一致对待问题。5.2.4 Net设计模式实例之装饰者模式(DecoratorPattern)装饰模式,给一个对象动态添加额外职责,这些职责需要由用户决定加入的方式和时机。装饰模式提供了“即插即用”的方式,在运行期间决定何时增加何种功能。就增加功能来说,装饰模式比生成子类更加灵活。5.2.5 Net设计模式实例之外观模式(FadadePattern)外观模式,为子系统的一组接口提供一个统一的界面,此模式定义了一个高层接口,这一个高层接口使的子系统更加容易使用。外观模式可以解决层结构分离、降低系统耦合度和为新旧系统交互提供接口功能。5.2.6 Net设计模式实例之享元模式(FlyweightPattern)享元模式(FlyweightPattern),运用共享技术有效支持大量细粒度的对象。Usesharingtosupportlargenumbersoffine-grainedobjectsefficiently.享元模式可以避免大量非常相似类的开销。在程序设计中有时需要生成大量细粒度的类实例来表示数

      《C_Net设计模式实例系列文章总结》由会员夏**分享,可在线阅读,更多相关《C_Net设计模式实例系列文章总结》请在金锄头文库上搜索。

      点击阅读更多内容
    最新标签
    监控施工 信息化课堂中的合作学习结业作业七年级语文 发车时刻表 长途客运 入党志愿书填写模板精品 庆祝建党101周年多体裁诗歌朗诵素材汇编10篇唯一微庆祝 智能家居系统本科论文 心得感悟 雁楠中学 20230513224122 2022 公安主题党日 部编版四年级第三单元综合性学习课件 机关事务中心2022年全面依法治区工作总结及来年工作安排 入党积极分子自我推荐 世界水日ppt 关于构建更高水平的全民健身公共服务体系的意见 空气单元分析 哈里德课件 2022年乡村振兴驻村工作计划 空气教材分析 五年级下册科学教材分析 退役军人事务局季度工作总结 集装箱房合同 2021年财务报表 2022年继续教育公需课 2022年公需课 2022年日历每月一张 名词性从句在写作中的应用 局域网技术与局域网组建 施工网格 薪资体系 运维实施方案 硫酸安全技术 柔韧训练 既有居住建筑节能改造技术规程 建筑工地疫情防控 大型工程技术风险 磷酸二氢钾 2022年小学三年级语文下册教学总结例文 少儿美术-小花 2022年环保倡议书模板六篇 2022年监理辞职报告精选 2022年畅想未来记叙文精品 企业信息化建设与管理课程实验指导书范本 草房子读后感-第1篇 小数乘整数教学PPT课件人教版五年级数学上册 2022年教师个人工作计划范本-工作计划 国学小名士经典诵读电视大赛观后感诵读经典传承美德 医疗质量管理制度 2
    关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
    手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
    ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.