共查询到20条相似文献,搜索用时 62 毫秒
1.
2.
当今的软件系统,随着行业业务的越来越复杂,与之对应的软件系统也变得越来越复杂,为了提高软件系统的可维护性和可复用性,模式特别是设计模式逐渐引起人们的重视。通过在高速公路收费系统开发中引入设计模式,不仅使得设计简单明了,而且提高了系统的可维护性和伸缩性。 相似文献
3.
设计模式是经过验证可复用的成功设计和体系结构,文中详细地分析了设计模式中的Builder模式、Bridge模式和Command模式在光传输网管系统中的应用,证明了在光传输网管系统中运用设计模式能够有效地提高系统质量、优化系统结构。同时也可以为其他的网管系统所借鉴。 相似文献
4.
设计模式在光传输网管系统中的应用研究 总被引:2,自引:1,他引:2
设计模式是经过验证可复用的成功设计和体系结构,文中详细地分析了设计模式中的Builder模式、Bridge模式和Conmand模式在光传输网管系统中的应用,证明了在光传输网管系统中运用设计模式能够有效地提高系统质量、优化系统结构。同时也可以为其他的网管系统所借鉴。 相似文献
5.
李巍 《数字社区&智能家居》2006,(5)
本文就如何运用泛化思维进行可复用设计进行了研究,介绍了泛化的相关重要概念,并对泛化思维在设计模式中的应用进行了探索,最后以一种模式为例详细介绍了如何设计泛化模式。 相似文献
6.
7.
随着信息技术的发展,对嵌入式系统的研究与开发已成为当前的一个热点.在这里先介绍面向对象的技术现状和它的总体设计思想,并采用面向对象思想和嵌入式软件特点相结合,通过该技术在数字视频监控系统中的应用,结合面向对象和底层语言的分析和研究,可以取得性能和可行性的平衡优势. 相似文献
8.
统一建模语言(Unified Modeling Language,UML)是一种可视化的面向对象的建模语言.设计模式是面向对象建模的一种辅助设计手段,它总结了面向对象设计的宝贵经验,使得在遇到相似场景时可以直接套用,提高复杂系统的设计效率.结合所实施的民航维修成本控制系统(AirCraft Maintenance Costing Control System,AMCCS)的开发工作,提出了使用UML技术进行系统整体规划设计、使用设计模式细化具体组件和部件的对象建模方法,已取得了良好的效果. 相似文献
9.
在C++中实现遍历器类型擦除:anyi_iterator首先,我要说说实现any_iterator的初衷。我有一个类负责向用户供应大量数字序列。其中主要的序列存储在STL容器内部,其他次要的则通过Boost遍历适配器从主要序列中实时计算得到。用户自己要对付这么多遍历器类型,显然十分痛苦。因此,我想实现能解引用double量的遍历器(输入遍历器)。这个遍历器是这样的,它必须可以控制任何的、我的类正暴露之的遍历器。 相似文献
10.
本文讨论了C++中泛型编程(generic programming)与面向对象设计(object-oriented design)原则的冲突问题,并用实例——any-iterator,一个类型安全、适用于任何类型的C++遍历器——说明了类型擦除(type erasure)技术对此问题的解决办法。 相似文献
11.
对当前软件重构领域中的研究作了概括性介绍。对作为重构的主导思想和系统体系结构的总体转换方向的设计模式进行介绍,针对原有的Visitor设计模式在运行中操作调用频繁时资源消耗过大和运行效率降低的不足,在原模式基础上进行改良和优化,生成一种新的设计模式Visitor*,并对其具体分析,通过操作函数的上移和accept方法的重定义,实现了操作定义由Element层到Visitor层的等价转化,大大节省资源和提高运行效率。最后运用Visitor^*实现了一个面向对象设计过程中的重构,并结合一些重要概念对其进行具体分析。 相似文献
12.
浅析Observer模式在GIS软件设计中的应用 总被引:1,自引:1,他引:1
面向对象方法仅仅从问题域的离散抽象很难达到高内聚和低耦合,设计模式的出现和广泛应用为解决这个问题提供了有效的方法.探讨了Observer模式的基本原理以及在GIS软件设计中的应用,并在具体实践中做了有益尝试.实践证明了设计模式在改善软件的灵活性和适应性方面所发挥的积极作用. 相似文献
13.
针对信息化软件开发、使用和维护过程中需求不断变化,扩展系统功能导致原有设计构架混乱,以及维护过程中的代码遗留问题,提出了一种采用基于插件体系结构的主题-服务-插件模型对系统实行软件重构的应用方案,在不改变系统原有功能的前提下,采用适配器设计模式统一系统模块接口,并运用观察者设计模式的通信模型实现系统模块之间的正常交互,消除系统模块之间的深度耦合,改善系统构架.最后运用该方案对通用车辆维修管理系统实施重构,实践结果表明,重构后的通用车辆维修管理系统更具灵活性、可扩展性,更好地适应用户的需求变化,方便测试维护,节约了维护成本. 相似文献
14.
15.
Class structure refactoring of object-oriented softwares using community detection in dependency networks 总被引:2,自引:0,他引:2
Weifeng Pan Bing Li Yutao Ma Jing Liu Yeyi Qin 《Frontiers of Computer Science in China》2009,3(3):396-404
The quality of a software system is largely determined by its internal structures which always degrade over the software evolution.
Therefore, the structures have to be reconditioned from time to time. However, the existing methods are very complex and resource-consuming
when doing this task. In this paper, we present an approach to recondition the class structures of object-oriented (OO) software
systems. It uses attribute-method networks and method-method networks to represent attributes, methods and dependencies between
them; It proposes a guided community detection algorithm to obtain the optimized community structures in the method-method
networks, which also correspond to the optimized class structures; It also provides a list of refactorings by comparing the
optimized class structures with the real class structure in software systems and inspecting the attribute-method networks.
The approach is evaluated using the open-source case study, JHotDraw 5.1, and the advantages of our approach are illustrated
in comparison with existing methods. 相似文献
16.
17.
面向对象可复用软件设计思想分析 总被引:6,自引:0,他引:6
软件复用技术是有效利用已有的软件资源,提高软件开发效率,降低开发成本的技术.但是如何才能设计出一个可以复用的软件,这是我们大家都很关心的问题,Erich Gamma博士在这方面进行了有益的尝试,他的研究方法是总结前人在面向对象软件开发过程中所积累的经验,即模式,但是模式是如何总结出来的,在总结模式时,或者说在设计可复用的软件时应该如何思考问题,这比总结模式本身更重要.本文主要从软件复用的关键——隔离变化入手,深入探讨和分析了面向对象的软件系统构造过程中可能发生变化的点,并给出了屏蔽这些变化点的方法,并提出了一个设计面向对象可复用软件的新的可操作的思路、 相似文献
18.
Generic programming has been defined as ‘programming with concepts’ where a concept refers to a family of abstractions. The criteria for generic programming include independence of collections from data types, independence of algorithms that operate on the collection, and the adaptability of the collections. This paper examines and evaluates the support for generic programming in the Java Development Kit (JDK) in comparison to C++'s Standard Template Library (STL). The evaluation will consider both the ‘qualitative’ factors as well as certain ‘quantitative’ factors (i.e. factors that can be measured). The qualitative factors that are considered include: 1. a comparison of the structure and APIs; 2. homogeneity versus heterogeneity; and 3. ease of use (including ease of converting to collection classes, ease of changing collection type, and ease of error handling). The quantitative factors include: 1. compiled size; 2. runtime memory usage; and 3. performance. The results of our evaluative comparisons based on the above factors and certain other criteria are presented at the end. Based on the results, we conclude that the support provided for generic programming in C++'s STL is superior to that provided by JDK. Copyright © 2003 John Wiley & Sons, Ltd. 相似文献
19.
A major problem for the integration of concurrency in object-oriented languages is the so-called inheritance anomaly, i.e. the conflicts between inheritance and concurrency that often cause the need to redefine inherited methods in order to maintain the integrity of objects. Several solutions have been proposed for resolving these conflicts. However, some of them are incomplete, and do not solve all types of inheritance anomaly; others make the definition of classes complex and/or their implementation inefficient. This paper describes a C++ library for concurrent programming that provides a comprehensive framework particularly suitable for coarse-grained distributed applications. This library copes with the inheritance anomaly problem, presenting a solution that minimizes the redefinition of inherited methods without increasing the complexity to write them. This solution is based on the use of a special set of methods, called interface methods, composed of a body and two sets of synchronization constraints. These two sets of synchronization constraints are respectively used to enable the execution of their method body and to disable the methods that cannot be executed after their method. © 1998 John Wiley & Sons, Ltd. 相似文献
20.
可视化技术能在计算模拟中提供可观察的直观图像,是分析和研究模拟现象的重要手段。本文运用C 的范型编程思想,将OpenGL的实时3D显示功能集成在一个封闭的类模板中,使其通用化,克服了直接调用OpenGL函数导致的程序结构不清晰和代码可复用性差的缺点,大大简化了计算模拟中实现可视化的方法步骤。 相似文献