分类筛选
分类筛选:

关于软件设计模式论文范文资料 与软件设计模式之我见有关论文参考文献

版权:原创标记原创 主题:软件设计模式范文 科目:论文题目 2024-01-27

《软件设计模式之我见》:本论文为免费优秀的关于软件设计模式论文范文资料,可用于相关论文写作参考。

摘 要:软件设计模式就是Uml统一建模语言的技巧性概念,其主要研究各个类模块和接口之间的安排和搭配,也是为程序员提供交流的一个很好的平台.利用软件设计模式可以做出质量更高,代码更少,扩充更容易的软件.它更像是一个工具箱,可以生产出更漂亮、更简洁的代码.

关键字:软件设计;设计模式;建模语言

中图分类号:TB472文献标识码:A

软件设计模式(Design pattern)是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结.使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性.软件设计模式主要分为创建型模式、结构型模式、行为型模式三种,其中创建型模式用来处理对象的创建过程,结构型模式用来处理类或对象的组合,行为型模式用来对类或对象怎样交互和怎样分配职责进行描述.

1.设备软件系统的特点

为增加新的处理新工艺变化而需要的功能,我们会修改设备软件的主程序或部分组件源代码,这样不仅修改代码量比较大,延误了软件更新的及时性要求,而且降低了原软件系统的可靠性,为设备的使用留下隐患;对于为修改工艺方法发生的软件系统的改动,则对应的设备软件的主程序修要修改的部分大大增加,甚至更改程序的主框架,使程序不易扩展,造成程序的可移植性大大的降低,不利于系统的升级,增加维护成本,因此,我们引入了设计模式的概念.

2.设计模式的分类

2.1创建型模式

创建型模式用来处理对象的创建过程,主要包含以下5种设计模式:抽象工厂模式(Abstract Factory)、生成器模式 (Builder)、工厂方法模式(Factory Methord) 、原型模式 (Prototype) 、单例模式(Singleton).Abstract Factory是应对一系列对象的创建的问题,正如前面文章中举的例子,对于创建一个汽车对象来说,Abstract Factory模式更关注一系列的对象的创建,或者说是汽车类型中的各个部分,如:Wheel、Engine、Body等等类型的创建.换句话说关注点在这一系列对象上.Builder是应对一个复杂对象创建的问题,或者说是针对这个复杂对象中的子对象的创建的问题.以汽车的例子来说,我觉得比起Abstract Factory模式,Builder模式相对注重汽车类型(上面所说的“复杂对象”)本身以及其各个部分(Wheel、Engine、Body等等)类型的创建.Builder模式要求这个复杂的类型(汽车)中的各个子类型的结合部分相对稳定,用例子说明就是对于汽车来说,无论用什么配件组装,个个配件的组装方式都一样,有相对稳定的接口.对于这辆车你用什么牌子的Wheel、什么牌子的Engine可能变化会很大很频繁.

2.2行为型设计模式

行为型模式用来对类或对象怎样交互和怎样分配职责进行描述,主要包含11种设计模式.允许多个类处理同一个请求,而不必了解彼此的功能.他在类之间提供一个松散的耦合.类之间唯一的联系就是相互之间的传递请求.请求在类之间传递,直到其中一个类处理它为止.当一个对象向多个对象发送相同的信息时,就需要一种策略来确定由哪个对象对所发送的信息进行处理,而这样的处理对象也只能有一个.使用case语句或if语句的方法会给程序的维护带来很大难度,这就需要职责链模式来完成.职责链模式将发送对象和接收对象进行了解耦,以更好的应对变化.职责链模式将接收对象形成一个链,发送对象将信息发送给接收对象链中的一个对象,这时,信息就沿着对象链向下传送,直到有一个对象对信息进行处理.

2.3结构型模式

结构型设计模式是从程序的结构上解决模块之间的耦合问题.包括以下七种模式:Adapte适配器模式:Adapter模式通过类的继承或者对象的组合侧重于转换已有的接口,类适配器采用“多继承”的实现方式,带来了不良的高耦合,所以一般不推荐使用.对象适配器采用“对象组合”的方式,更符合松耦合精神.Bridge桥接模式:将抽象部分和实现部分分离,使它们都可以独立的变化.减少因变化带来的代码的修改量.Composite组合模式:将对象组合成树形结构以表示“部分-整体”的层次结构.Composite模式使得客户对单个对象和组合对象的使用具有一致性.从而解决了解决客户程序和复杂对象容器的解耦,即:通过继承统一的接口,我们可以将容器对象及其子对象看成同一类对象使用,以减少对象使用中的复杂度.Decorator装饰模式:动态地给一个对象添加一些额外的职责.就增加功能来说,Decorator模式相比生成子类更为灵活.Decorator模式采用对象组合而非继承的手法,实现了在运行时动态的扩展对象功能的能力,而且可以根据需要扩展多个功能,避免了单独使用继承带来的“灵活性差”和“多子类衍生问题”.同时它很好地符合面向对象设计原则中“优先使用对象组合而非继承”和“开放-封闭”原则.Facade外观模式:为子系统中的一组接口提供一个一致的界面,简化接口.Flyweight享元模式:运用共享技术有效地支持大量细粒度的对象.面向对象的思想很好地解决了抽象性的问题,一般也不会出现性能上的问题.但是在某些情况下,对象的数量可能会太多,从而导致了运行时的代价.那么我们如何去避免大量细粒度的对象,同时又不影响客户程序使用面向对象的方式进行操作.Proxy 模式:为其他对象提供一种 以控制这个对象的访问.解决直接访问某些对象是出现的问题.从代码的角度看Adapter适配器模式和Proxy 模式有些类似,前者是解决现有对象在新的环境中所遇到的问题,后者是解决直接访问对象时出现的问题,这两种模式从使用角度看都是解决直接访问对象时出现的问题,只是含义不十分相同.

3.结束语

通过对设计模式的研究,我们的软件研发人员不仅能设计出满足客户需求并且灵活、易扩展、复用性强的软件系统,同时还能使我们的设计者深入了解面向对象的编程思想,提高本身的视野及实际研发水平.

参考文献:

[1]张海攀.信息系统软件体系结构设计研究[N].电脑报,2014

[2]丁黎明. 构件技术的中间件开发研究[J].企业文化,2014

软件设计模式论文参考资料:

软件设计模式论文

本科毕业设计

广告设计论文

毕业设计日志

毕业设计

设计投稿

结论:软件设计模式之我见为关于对写作软件设计模式论文范文与课题研究的大学硕士、相关本科毕业论文软件设计论文开题报告范文和相关文献综述及职称论文参考文献资料下载有帮助。

和你相关的