面向对象框架技术及应用

合集下载

掌握常用框架的基本用法与应用场景

掌握常用框架的基本用法与应用场景

掌握常用框架的基本用法与应用场景常用框架的基本用法和应用场景可以根据具体的框架来进行讨论。

以下是几个常用框架的基本用法和应用场景。

1. Spring框架:Spring是一个轻量级的Java开发框架,提供了一站式的解决方案,包括依赖注入、AOP、事务管理、Web开发等。

在Spring框架中,可以通过注解或XML配置来管理各个组件之间的依赖关系,并利用Spring的IOC容器来管理对象的生命周期。

应用场景包括Web应用开发、企业应用开发、中小型项目开发等。

2. Hibernate框架:Hibernate是一个Java持久化框架,它提供了将Java对象映射到数据库表的解决方案。

通过Hibernate,开发人员可以简化数据库操作,使用面向对象的方式来进行数据库访问,提高开发效率。

应用场景包括ORM映射、事务管理、性能优化等。

3. Django框架:Django是一个基于Python的Web开发框架,致力于提供高效的、安全的Web应用程序开发解决方案。

它采用了MTV (Model-Template-View)的设计模式,通过模型(Model)与数据库交互,通过模板(Template)生成HTML页面,通过视图(View)处理用户请求。

应用场景包括Web应用开发、数据分析平台搭建等。

4. React框架:React是一个用于构建用户界面的JavaScript库,它提供了高效的组件化开发方式,通过虚拟DOM的技术实现了高性能的界面渲染。

React可以与其他框架或库(如Redux、React Router)结合使用,用于构建单页应用、移动应用等。

应用场景包括前端开发、跨平台移动应用开发等。

除了以上几个框架,还有许多其他常用框架,如Angular、Vue.js、Express等,它们都有各自的特点和适用场景。

掌握这些常用框架的基本用法和应用场景,可以帮助开发人员更高效地进行软件开发,提高开发质量和效率。

此外,不仅要掌握框架的基本用法,还要提升自己的拓展能力,如深入学习框架的源码、参与开源社区、阅读相关的技术文章和书籍等,才能更好地应对各种应用场景和解决复杂问题。

面向对象编程的基础理论与应用

面向对象编程的基础理论与应用

面向对象编程的基础理论与应用面向对象编程,简称OOP,是一种程序设计范式,是现代计算机程序设计的主流方法之一。

它将程序中的数据和函数封装在对象中,以对象为核心,实现代码的模块化和重用。

本文将介绍OOP的基础理论和应用。

一、面向对象编程的基础理论1.1. 类和对象类是面向对象编程的基本概念,它是一种用户自定义的数据类型,用于描述具有相同特征和行为的对象的抽象概念。

类具有属性和方法两种成员,属性用于描述对象的状态,而方法用于描述对象的行为。

例如,人类是一个类,拥有身高、体重、年龄、性别等属性,以及行走、说话、工作等方法。

对象是类的一个实例,是具有类定义的属性和方法的实体。

对象由类创建而来,可以看成是类的一种具体实现。

例如,小明是人类的一个对象,拥有身高170cm、体重60kg、年龄20岁、男性等属性,以及行走、说话、上学等方法。

1.2. 封装、继承和多态封装是指将数据和方法封装在对象中,对外部屏蔽对象的内部实现细节,只提供公共接口供外部使用。

封装允许程序员隐藏复杂性和保护代码不受外部干扰,提高程序的可维护性和安全性。

继承是指在已有类的基础上,创建一个新的类,新类可以继承原有类的属性和方法,并可以增加或修改其功能。

继承可以提高代码的重用,减少代码的冗余,同时还可以使程序的层次结构更为清晰。

多态是指在不同的对象上调用相同的方法,可以产生不同的结果。

它允许程序员使用一种统一的方式处理不同的对象,使程序更具灵活性和可扩展性。

二、面向对象编程的应用2.1. 程序的模块化和重用OOP的一大优势是可以将程序按照功能模块化,不同的模块之间可以独立地设计、编写和测试。

每个模块都是一个对象,可以单独进行维护或调试,这大大提高了程序的可维护性和可扩展性。

同时,OOP的封装和继承机制,也可以使代码的重用更为方便和高效。

2.2. 图形界面编程OOP特别适合于图形界面编程,因为图形界面程序需要处理大量的对象,例如窗口、按钮、文本框、标签等,每个对象都是一个类的实例。

若依框架源码解析

若依框架源码解析

若依框架源码解析笔者通过源码分析的方法,深入探究了框架的设计思路、技术实现和应用场景等方面,帮助读者更好地理解框架的特点和使用方法。

一、设计思路框架的设计思路主要是基于面向对象编程的思想,通过抽象和封装来达到模块化和可维护性的目的。

具体的理念表现在以下几个方面:1.松耦合框架中的模块之间采用松耦合的方式进行交互,每个模块只需要关注自己的功能,而不需要关注其他模块的实现细节。

这样做可以让整个框架的可维护性和可扩展性得到很好的保证。

2.高内聚框架中的功能模块都具有高内聚性,即模块内的功能紧密关联,可以独立完成一项任务。

这样做可以让整个框架的可读性和可维护性更高。

3.设计模式框架中采用了很多设计模式,如工厂模式、单例模式、观察者模式等,这些模式都可以很好地提高代码的复用性和可扩展性。

4.依赖注入框架中采用依赖注入的方式来解耦模块之间的依赖关系,可以很好地实现模块的复用和扩展。

二、技术实现框架中采用了很多技术来实现设计思路,主要包括以下几个方面:1.反射框架中使用了反射技术来动态创建对象、调用方法和获取属性等,可以很好地降低了系统的耦合性和提高了系统的灵活性。

2.代理框架中使用了代理技术来动态生成代理对象,可以很好地实现横切关注点的集中处理,提高了系统的性能和可维护性。

3.AOP框架中采用了AOP的思想,通过切面编程来实现对业务逻辑进行拦截和修改,可以很好地实现系统的解耦和功能的复用。

4.注解框架中使用注解的方式来注入对象、自动装配、路由映射等,可以很好地提高代码的可读性和可维护性。

三、应用场景框架适用于各种复杂的业务系统开发,如电商系统、金融系统、社交系统等。

同时,框架还可以用来开发一些轻量级的Java应用,如工具类库、命令行工具等。

总之,框架的设计思路和技术实现都非常的成熟和先进,在实际使用中可以很好地提高代码的质量和开发效率。

希望本篇文章对读者有指导意义,促进读者更好地理解和应用框架。

面向对象技术在软件开发中的应用

面向对象技术在软件开发中的应用

面向对象技术在软件开发中的应用随着计算机技术的发展和计算机的广泛应用,软件应用越来越广泛,人们对于软件开发的要求也越来越高。

在软件开发中,面向对象技术被广泛应用,成为开发的重要手段之一。

本文将详细介绍面向对象技术在软件开发中的应用。

一、面向对象技术的概念面向对象技术是一种基于对象的程序设计方法,它将系统看作一组对象的集合,每个对象都有自己的状态和行为,通过对对象的状态和行为进行抽象和封装,实现代码的重用和更好的可维护性。

面向对象技术主要包括以下三个特性:封装:在面向对象技术中,每个对象都有自己的数据和方法,并将其封装起来,以避免其他对象直接访问和改变它们的值。

继承:通过继承可以将一个类的属性和方法继承到另一个类中,实现代码的复用,减少代码的冗余。

多态:多态是指同一种方法可以被不同的对象以不同方式调用,通过多态可以提高代码的可扩展性。

二、面向对象技术在软件开发中有以下几个常见的应用:1.面向对象分析(OOA)面向对象分析(OOA)是一种软件开发方法,其主要目的是将问题域转换为面向对象的模型。

通过面向对象分析,可以将需求变成可执行的模型,同时有效的抵制需求波动造成的影响。

在OOA中,首先需要对问题进行分析,确定系统的需求和功能,然后通过细化这些需求和功能,逐步将其转化为面向对象的模型。

最终得到的模型就可以直接映射到程序代码中。

2.面向对象设计(OOD)面向对象设计(OOD)是一种根据面向对象技术的相关规定对编程进行设计的方式。

这种设计方式将业务领域中的复杂性进行分析与设计,将其转化为面向对象的模型。

在面向对象设计中,首先要创建一个类图,根据需求,在类图上添加所需的类,然后建立类之间的关系。

在建立好类图之后,开始设计每个类的成员方法和属性,最终得到模型,可以直接映射到程序代码中。

3.面向对象编程(OOP)面向对象编程(OOP)是一种开发应用程序的编程技术,通过面向对象编程,可以将任务的操作对象看作是一个独立的对象。

面向对象分析和设计方法的实践应用

面向对象分析和设计方法的实践应用

面向对象分析和设计方法的实践应用面向对象分析和设计方法(OOAD),是一种以对象为基础的软件开发方法。

通过面向对象的思想,将软件系统中的各个部分进行抽象化,并通过类与对象的关系构建软件系统的模型。

其主要的思想是将软件系统中的各个部分看作是对象,通过这些对象能够互相沟通与交互。

凭借其严密的实践应用,OOAD已成为日常软件开发中的事实标准。

1. OOAD的基本流程OOAD有自己的基本流程,其主要步骤包括需求捕捉、面向对象的域分析、面向对象的设计、面向对象的编程和测试。

通过这些步骤,软件开发人员可以有效地完成一个软件系统的开发过程。

2. OOAD在实践中的应用在实际的软件开发中,OOAD可以应用于各个方面。

例如,在设计一个可靠的银行账户管理系统时,SOAD就是一个非常实用的面向对象分析和设计模型。

该模型能够在一个对象模型中把系统中所有的角色和过程进行抽象化,并为每个角色和过程分配隶属关系。

这种模型可以帮助开发人员完成系统的编码和维护,同时也可以为银行的人员提供一个清晰的管理界面。

另一个例子是利用OOAD来设计制造业中的产品。

在这一领域,OOAD可以帮助设计人员创建一个稳固的产品模型。

通过这个模型,他们可以快速及准确地观察制造过程的各个方面,并对过程进行调整,确保这个模型最终能够成为一个理想的产品。

与此同时,这种模型也可以为制造企业提供支持,并协助其在全球市场上快速发展。

3. OOAD的优势与挑战虽然OOAD已经成为了软件开发的标准,但其仍然存在着一些挑战和缺陷。

其中最大的挑战之一便是如何确保开发人员始终保持该方法的高标准。

虽然OOAD可在企业中发挥强有力的作用,但开发人员必须始终处于高度专业的状态,才能充分利用OOAD的优势。

管理者也应该为此提供必要的支持,以确保接到的项目能够高效完成。

OCAD最大的优势在于其对软件开发过程的理解与体现。

其通过有效的面向对象的思想,将加速整个软件开发过程。

此外,它可以帮助开发人员更快地实现整体性能的调整和模型的优化。

Java面向对象编程实战案例

Java面向对象编程实战案例

Java面向对象编程实战案例1. 简介Java面向对象编程(Object-Oriented Programming,OOP)是一种常用的编程范式,它以对象为中心,通过封装、继承和多态等特性来组织和管理代码。

本文将介绍一些实战案例,展示Java面向对象编程的实际应用。

2. 案例一:学生管理系统学生管理系统是一个典型的Java面向对象编程案例,它常用于学校、培训机构等管理学生信息。

在这个案例中,可以定义一个Student类,包含学生的姓名、年龄、学号等属性,以及学生的增删改查等方法。

可以使用面向对象的思想,将学生信息封装到一个对象中,并使用集合类来管理多个学生对象。

3. 案例二:图形计算器图形计算器是另一个有趣的Java面向对象编程案例。

可以定义一个Shape类作为图形的基类,包含计算图形面积和周长的方法,并派生出Circle、Rectangle和Triangle等子类,分别表示圆形、长方形和三角形。

通过面向对象的继承特性,可以调用对应子类的计算方法,根据用户的输入来计算所需图形的面积和周长。

4. 案例三:银行账户管理系统银行账户管理系统是一个常见的Java面向对象编程案例,用于管理银行的账户信息。

可以定义一个Account类,包含账户的姓名、余额、存取款等方法,并通过封装特性将账户信息隐藏在对象中。

可以使用ArrayList类来存储多个账户对象,实现对账户信息的管理和操作。

5. 案例四:图书馆管理系统图书馆管理系统是另一个典型的Java面向对象编程案例,用于管理图书馆的图书信息。

可以定义一个Book类,包含图书的书名、作者、价格等属性,并封装对应的get和set方法。

可以使用HashMap类来存储图书编号和对应的图书对象,实现图书的检索和借还功能。

还可以定义一个User类表示图书馆的用户,包含用户的姓名、借书数量等属性。

6. 案例五:游戏角色管理系统游戏角色管理系统是一个有趣的Java面向对象编程案例,用于管理游戏中的角色信息。

浅析面向对象框架复用技术

浅析面向对象框架复用技术

的体 系结 构 ,框架 体 系结构 在披实例化时决 定了具体应 用的总 体结构 。此 外 ,OOF还 包含 了一 系列 约束 ,包 括框 架内部 的 控制 流程 、构 件之 间 的协 作关 系 以及框 架 对于扩 展 的 限定等 等 ,这 些约 束 往往 与 领域 有关 。 设计模 式描 述 了针 对特 定 问
I n f l gHi e = 0 The n t = n
i Ero = Er . sDl r r nt r r r La t l o Er l n Er o <> l fit rr The Go r o Ha de 8 n To e r r n lr
维普资讯
SCI ENCE & TECHN OLOOY面向对象框架复用技术
刘风华
( 中华女子学院山东分院
中图分类号 :T 3 15 P 1 .2 文献标 识码 :A
200 5 02)
软件 复用是 在软件开 发中避免 重复劳动 的解决方案 ,其 出 发点是 开发 应用 系统 不再 采 用一 切 “ 零开 始 ”的 模式 ,而 从 是 以已有的工作为基础 ,充分利 用过去应用 系统丌发 中积 累的 资源 ,如 设 计 、 代码 、测 试 用 例 、 度量 、过 程 开 发 知 识 和 经验等 ,从而将开 发的重点集 中在 完成系统 的业务逻辑设计 上面 。在现代软件工程 中 ,像 代码 复用这样 低层次的复用 已经 不适 合于特 定领域大型软 件生产的需 求 ,_ 业化 的软 件复用 已 [ 经从通 用类库 进化到 了面 向领域的应用 框架 。框架 由于提供 了 大 力度的重用而 被认为是 一种最有 前途 的面 向对 象技术 。 1 面 向对象框 架技术 . 国外著名的软 件设计大师 Rap o n o lh J h s n在他 写的许 多关 于面 向对 象的论文 中对框 架进行 了如 下定义 :框 架是 一种软件 重 用技 术 ,它是 一个 应 用软 件 系统 的部 分或 整体 的 可重 用设 计 。框架 具体 表 现为 一组 抽 象类 以及 其 实例 ( 对象 )之 间 的 相瓦作用方式 。它是对 于一个软件 系统的全部或 部分的可 复用 设计 。

面向对象技术在软件设计中的应用

面向对象技术在软件设计中的应用

面向对象技术在软件设计中的应用随着计算机技术的飞速发展,软件设计的重要性日益凸显。

而面向对象技术作为一种先进的程序设计模式,正逐渐成为软件设计中的主流方法。

在面向对象技术的架构下,程序被构建为一系列相互关联的对象,每个对象有自己的属性和行为,与其他对象之间相互交互和协作完成各种任务。

本文将探讨面向对象技术在软件设计中的应用,并介绍面向对象技术的三大基本特征。

一、面向对象技术在软件设计中的应用1. 提高复用性:面向对象技术强调将程序模块化,将各个对象分别实现特定的功能,并且允许多个对象之间相互协作,降低程序之间的耦合度,从而提高代码的复用性。

2. 提高拓展性:面向对象技术支持继承和多态,这些特性使得程序的模块化设计更加灵活,可以在不改变原有结构的基础上,对程序进行功能扩展和修改。

3. 提高代码的可读性和可维护性:面向对象技术强调将一些类比喻为日常生活中的实体,使得程序的设计更符合人类的认知方式。

代码的结构化和模块化让程序更容易阅读和维护。

二、面向对象技术的三大基本特征1. 封装性:面向对象技术中最重要的一个特性是封装性。

封装意味着将相关的数据和行为组合在一起,形成一个独立的逻辑单元(类),并对外部隐藏其具体实现细节,只提供有限的访问接口。

封装确保了程序的数据安全性和一致性,同时也提高了代码的可维护性。

2. 继承性:继承允许在不重写已有代码的基础上,利用父类已有的代码和数据来创建一个新的类。

继承的好处在于可以节省程序的开发时间,减少代码的冗余。

同时,继承也满足了程序设计中的"单一职责原则"(SRP),即每个类都应当只有"一种"职责。

3. 多态性:多态性指的是同一类型的对象在不同情况下具有不同的表现形式和行为。

比如,一个“人”可以使用不同的方法行走、奔跑、说话等,这些行为的调用取决于具体的情况和环境。

多态性允许程序结构具有更高的灵活性和可扩展性。

三、总结面向对象技术是一种设计和编程的范式,它使得程序设计更为灵活和高效。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

面向对象框架技术及应用面向对象框架技术是软件重用的一种重要方式。

本文以面向对象开发方法为基础,结合防空C I通信网仿真系统,介绍了开发特定领域应用框架的方法。

引言在现代软件工程中,软件重用已经成为其中一个主要目标。

代码重用通过面向对象语言的继承机制和编译技术已成为现实。

随着面向对象技术的日趋成熟,像这样低层次的复用已经不适合于特定领域大型软件生产的需求。

为了提高软件生产过程的重用力度,软件领域的先驱者们开始进行一种新的尝试来提高软件生产力,他们不仅要重用旧的代码,而且要重用相似的分析设计结果和体系结构,来减少构造新软件系统的代价并提高软件的可靠性。

基于框架的方式就是这样一种面向特定领域的重用技术。

框架由于提供了大力度的重用而被认为是一种最有前途的面向对象技术。

单独的类的重用,尽管有用,但由于重用力度小而不具备有意义的生产力的飞跃,只有把特定领域的体系结构作为一个整体进行重用才能取得引人注目的成就。

在仿真领域中,面向对象使得映射问题域到方案域变得很容易。

方法和数据可以绑定到面向对象风格的程序中。

仿真领域中的一个具体的实体都可以作为一个主动或被动对象,因此采用面向对象技术来解决仿真问题是明智的。

本文将结合建立C3I通讯子网仿真来讨论建立面向对象框架的方法和步骤。

■面向对象框架1.什么是面向对象框架一个面向对象框架是指在特定领域中的应用软件的半成品。

框架是对于那些试图在他们所关心的领域构造一个复杂软件系统的用户而言的。

因为它是处于特定领域中,所以应用系统的体系结构在许多不同的方面具有一定的相似性。

框架利用一系列的对象和它们之间的接口来对应静态和恒定结构的端口,并保留友好界面使用户能够很容易完成变化的、不稳定的剩余部分而得到一个新应用程序。

任何框架都是特定领域的框架,一个框架可以包含一个或多个模式。

一般来说,如图1所示,框架定义了一个应用程序的骨架并提供可以放置于该骨架中的标准用户界面实现。

作为一个程序员,你的工作只是在骨架中填入你的应用程序中特定的部分。

目前有关面向对象框架尚未形成一个严格而精确的定义,国外著名的软件设计大师Ralph Johnson 教授对面向对象技术进行了长期而深入的研究,在他写的许多关于面向对象的论文中对框架进行了如下定义:图1 特定领域的框架框架是一种软件重用技术,它是一个应用软件系统的部分或整体的可重用设计。

框架的具体表现为一组抽象类以及其实例(对象)之间的相互作用方式。

它是对于一个软件系统的全部或部分的可复用设计。

如一个用户界面框架只提供系统对用户界面的设计,而MacAPP的“Macintosh应用框架”提供了整个应用系统的设计。

由定义可知,一个框架是一种面向对象的设计,尽管通常我们看到的框架都是由某种面向对象语言实现的,但从理论上讲它可以不提供面向对象语言的实现。

面向对象类库大力度的复用需要框架,框架提供了类库中被复用组件的上下文关系。

在一个专用领域内构造框架时,把握框架的共同点是关键因素。

框架一旦被建立,其适应性和可扩展性就被提到了首要地位。

框架的直接目的是被复用,以减少建立一个新应用系统的工作量。

只有当理解一个框架的代价少于建立一个新系统的代价时,框架的复用才成为可能。

构造框架是一个逐渐积累的过程,就是说不断有新发现的共同点和新的构件被加入,同时那些老的、不必要的部件被删除,以此来保证整个应用系统的性能,这样新旧构件之间的接口直接影响框架的适应性和可扩展性。

任何框架都不能被直接复用,除非要建立的应用系统非常简单或者与框架极为相似,除此之外,都要对框架进行或多或少的修改和扩展才能被复用。

2.框架和类库的不同我们首先要给类库一个明确的定义,对类库的广义描述为:类库以库文件的形式存在,库文件中包含了事先定义好的类。

从广义的角度看,面向对象框架的存在形式可以看作一个类库,它是建立在对多态性和动态绑定的系统化的广泛使用基础之上,这些说起来很简单,但现在已建立的开发方法很少有支持对框架设计的。

不过一些新的方法原理,例如模式和抽取,表现了对面向对象方法有意义的支持。

但在传统意义上,框架是不同于类库的,框架包含更多的内容。

框架是对协作完成一系列相关责任的类集合的抽象设计。

框架和类库的一些主要区别与联系如下:①在类库中是由用户实例化抽象类,类库构件被单独使用;而在框架中要有抽象类的一些具体子类,应用软件开发者通过修改现存的类或定义新的子类以扩展现存的类来使用框架。

②在类库中是用户在需要的时候调用函数,不预定义控制流;而框架使用了与用户之间的反向控制流,使用框架时,通常只是实现一些回调函数或者使一些类适用于上下文,然后调用一个单一的方法或过程,框架将完成其余的工作,在适当的时候和地点调用必要的函数或方法。

这就是框架的Hollywood法则(“Don't call us, we'll call you”)。

③使用类库只需要了解类的外部接口,但必须要定义应用软件的整体结构;而框架的使用者要了解框架的抽象设计和类的内部结构来进行修改和扩展,因此学习框架要比类库更加困难,同时有被错误使用的危险,但框架被复用的潜力大大超过了类库。

④在类库中没有定义缺省行为,而在框架中提供缺省行为。

■框架技术应用示例下面,笔者将结合建立C3I通讯子网仿真来讨论建立面向对象框架的方法和步骤。

1.防空C3I通信网仿真系统C3I系统由指挥、控制、通信和情报四个方面的技术系统组成,是一个庞大复杂的系统。

防空C3I通信网仿真作为C3I 系统仿真的一部分,其主要功能是通过共享传输设备进行信息传输,所含部件包括工作站、路由器和通信链路等等,所传送报文分为三种类型,由处于不同位置的用户或用户群随机产生,要求系统根据报文的不同属性、优先级和长度进行适当处理。

由于防空C3I通信网仿真系统涉及分布式理论及时间同步原理,作为简单示例,在此我们只讨论单机环境下的军师级防空作战指挥系统的面向对象仿真框架。

防空C3I通信网包括军指挥中心(见图2)和若干(如3个)师属防空指挥系统(见图3)。

该中心由军防空情报方舱、军防空指挥方舱和军防空通信方舱组成,每舱中若干终端连成LAN,方舱间由无线LAN互连,军情报方舱通过电台与情报采集融合网络连接。

军通信方舱通过电台与军直属防空群相连,地域网接口与各个师防空指挥部交换信息。

类似于军防空指挥中心,各师由二个方舱,即师防空指挥方舱和师防空通信方舱通过LAN将若干终端连成网,组成师指挥通信系统。

类似的,我们可以再向下拓展至团、连、营等。

由此我们可分析得知,军防空指挥中心和师防空指挥系统在结构上具有一定的相似性,它们有相同类型的方舱,有相似的内部结构。

图2 军防空指挥中心示意图2. 防空C3I通信网仿真框架框架应该是在对现存应用领域内的软件系统作了深入了解分析后才得到的。

经过对军级防空作战指挥系统进行分析研究,我们认为此系统主要包括如下结构成分(组件):局域网、工作站、路由器、报文及报文队列,而这些成分在师级的系统中也是必要的。

为了建造防空C3I通信网仿真系统框架,我们在对其军级作战指挥系统进行分析后得出五个基本类,其对象关系如图4所示。

基于软件框架的软件开发过程,把软件的开发看作一个组装过程,在软件框架的指导下寻找可复用构件(及开发一些新构件)并进行系统组装,这种开发过程是目前很受重视的研究方向。

①局域网类HLan局域网类HLan是构成系统的主要成分,同时也是独立运行和独立仿真的基本单位,它可以包含三个子类:军防空情报方舱、军防空指挥方舱和军防空通信方舱。

局域网由工作站和路由器通过总线连接而成,其中工作站可以有多个,但不能少于一个,路由器有且只能有一个。

局域网对总线采用多址接入方式进行访问。

图3 师防空指挥中心示意图②工作站类HStation工作站类HStation主要完成对报文的产生、存储、处理、转发和接收。

工作站利用接收队列存放自己产生的以及来自其他队列的报文,利用发送队列存放自己需要发送到其他工作站的报文。

工作站可以根据报文的类型分为多种类型,如普通终端、指挥报文计算终端、地域网出口及存储转发站等等。

通常工作站的属性信息是来描述工作站具体类型和所具有的特殊功能。

③路由器类HNetBridge路由器类HNetBridge作为局域网和外界的通信接口,其主要功能是完成局域网和外界之间的报文交换。

路由器分别用接收队列和发送队列来保存报文。

我们可以以军防空指挥中心仿真系统为基础,抽象出其框架,再复用到师防空指挥系统中,这样就减少了开发整个防空C3I通信网的代价,也为以后对系统的扩展提供了条件。

④报文类HMsg报文类HMsg是此系统中的动态实体,也是系统内各部件之间进行联络的惟一表现形式。

根据要求系统内的报文分为三种形式:指挥报文、战况报文和业务报文。

指挥报文的优先级较高,是由特定源工作站每隔固定时间间隔产生一次,按特定路由传递、处理,最终到达特定目标工作站。

战况报文按泊松分布产生,其产生期望值作为工作站参数,优先级较低。

业务报文由所有工作站产生,其产生规则及优先权约定与战况报文相同。

图4 仿真框架对象关系图⑤报文队列类HMsgQue报文队列类HMsgQue用于存储报文,分为接收队列和发送队列两类。

当然在对该仿真系统进行详细的面向对象框架设计时,只有这五个基本类是远远不够的,但由于篇幅的限制,在此我们只给出这五个基本类的说明。

由军级防空指挥中心抽象出的仿真框架,复用到师级防空指挥系统中,控制线程为MEC中的GUI应用框架,将各子框架进行组合就可以得到整个军师级防空C3I通信网仿真系统。

■结束语采用基于面向对象框架的方法开发应用软件,其意义在于可以以框架为重用部件的基本构造单元来实现软件工业化生产,有效地降低软件开发的成本,提高生产效率和软件可靠性,尤其对特定领域复杂系统的高可靠性专用软件更具有实用价值,为这些特定领域的软件开发提供了一种强有力的技术。

相关文档
最新文档