新时期计算机程序的设计模式
2017-03-27贺晓平
贺晓平
摘 要 随着互联网技术的快速发展和进步,计算机应用程序已经在在线旅游、智能学习、金融证券、电力通信、生产制造等领域得到广泛应用,开发了许多先进的自动化系统。随着软件功能增多,计算机程序设计越来越复杂,因此需要采用先进的程序设计模式,提高计算机程序开发的可移植性、可重用性,从而缩短软件开发的周期和提升软件运行准确度,具有重要的作用和意义。
【关键词】程序设计 创建型 结构型 行为型
1 引言
随着应用软件的发展和普及,其功能越来越多,程序开发工作量也急剧增大,因此亟需创建一种新型的计算机程序设计模式,提高编程效率和缩短软件开发周期,为此可利用先进的开闭原则、里氏代换原则、单一职责原则、依赖倒置原则和接口隔离原则,构建和研发程序开发模式。一个完整的程序设计模式包括四个基本要素,分别是模式名称、问题、解决方案和效果,其核心思想是通过增加相关的抽象层将变化部分从不变化的部分中分离出来,从而大幅度提升代码的复用性,增强程序代码的可维护性。当前,程序设计模式已经在面向对象、面向过程等软件开发中得到广泛应用,提高软件设计效率的同时也可以优化软件系统性能,更加有效地提高软件系统设计的灵活性。
2 新时期计算机程序设计模式
目前,计算机程序设计模式主要包括三个类型,分别是创建型模式、结构型模式和行为型模式,这些模式既适用于面向对象程序设计,也适用于面向过程程序设计。具体地,每一种程序设计模式的具体应用包括以下几个方面:
2.1 创建型模式
创建型模式与对象创建存在密切关系,其可以描述对象创建的详细过程,并且能够封装和隐藏对象创建细节,确保计算机程序代码不依赖于任何一个具体的对象,即使需要增加一个新对象,也不需要修改代码。创建型程序设计模式经过多年使用,已经得到了极大的改进,诞生了抽象工厂模式、单件模式。
2.2 结构型模式
结构型模式可以有效地描述類和对象之间的组织结构,实现新型程序设计功能。结构型程序设计模式采用了继承机制组合类,比如适配器模式;结构型对象模式可以实现对象组装,比如组合模式、代理模式或装饰模式。结构型模式操作中,适配器对象是一个类的接口,并且能够通过转换成为另外一个接口;组合模式可以将每一个对象组合成为树型结构,表示一个部分—整体层次结构;装饰模式可以动态地增加对象功能;代理模式可以提供一个代理,该模式可以动态地控制对象访问程序。
2.3 行为型设计模式
行为型设计模式可以利用描述算法来分配各个对象之间的任务,其描述的不仅仅是类或对象的设计模式内容,还可以为各个模式之间提供通讯功能。目前常用的行为型设计模式包括观察者模式、状态模式、命令模式、策略模式和迭代器模式。行为型设计模式克服了程序运行时刻存在的复杂控制流,采用对象复合模式,可以完成单个对象不能够完成的任务。行为型设计模式中,命令模式可以将多个请求封装成一个对象,根据不同的请求针对客户内部的数据进行参数化。状态模式允许每一个对象的状态内部发送改变时不需要改变其自身行为;策略模式可以定义许多封装算法,将这些算法一个个地封装起来,使得这些状态可以有效地进行互换。
3 计算机程序设计新模式展望
计算机程序设计模式具有简单表达、快速复制等特点,因此已经在程序开发中得到广泛应用,并且得到了很多人的研究和改进,诞生了许多新型的计算机程序设计模式。未来计算机程序设计新模式包括以下几个发展趋势:
3.1 面向UI模式
随着移动通信、智能手机等新型“互联网+”软硬件资源的诞生,传统的软件开发已经逐渐向轻量级模式转变,因此为了提高智能应用终端软件的便捷性和友好性,程序设计新模式需要向UI模式转变,以人们的使用感知为基准,提高应用软件产品开发成效。
3.2 面向协作工作流模式
随着软件功能的增多,程序设计的内容也越来越多和复杂,设计团队的很多人需要协作才能够完成,因此为了提高程序设计的效率,计算机程序设计模式可以逐渐转向协作工作流模式,该模式结合了工厂模式和组合模式的优点,自顶向下构建应用软件功能流程,凸显了程序开发的强大效能。
3.3 集成设计模式
目前,软件开发模式集成了多种属性,这些属性可以有效地应用JavaEE、.NET、MVC、Struts等架构,构建一个多层次、轻量级、驱动型的应用程序组件模型,在处理底层的通信服务、函数调用时可以采取接口模式,简化Java、C++、C等程序语言编写的过程,更好地为智能终端、云端应用软件的开发、配置和执行提供支撑。同时这些架构的规范由微软、SUN、高通、华为、百度、阿里巴巴等公司联合制定,定义了一组可以重用的组件,利用这些组件可以像搭积木一样构建分布式应用程序,进一步提高软件开发的通用性。
4 结束语
随着计算机程序设计模式的应用和改进,其已经随着面向对象程序诞生了许多新型设计概念。优化计算机应用程序设计模式可以为开发人员带来很多好处,并且能够根据实际应用情况选择多种设计模式,彻底地改变传统软件开发模式存在的问题,比如软件复用性较低、软件错误较多等问题,同时可以利用人们的实际开发情况提高可移植性、健壮性和鲁棒性,进一步缩短应用软件开发周期。
参考文献
[1]孙晶,方英兰,张永梅,等.计算机类的程序设计课程教学模式探讨[J].电脑知识与技术,2015,11(32):101-102.
[2]杨新艳,苏爱玲.Java设计模式在基于MVC模式系统中的应用研究[J].计算机光盘软件与应用,2014,15(13):128-129.
[3]许涵斌,张学林,郑晓梅,等.一种基于结构查询的UML设计模式识别方法[J].计算机科学,2014,41(11):50-55.
[4]古辉,张炜星,金鹏,等.基于关联度和特征约束的软件设计模式识别方法[J].计算机科学,2015,42(02):173-176.
作者单位
湖南省益阳市桃江县职业中专学校 湖南省桃江县 413400