程序范型实验工具设计与实现(组件模型设计)开题报告

 2022-10-31 10:10

1. 研究目的与意义

随着计算机应用的普及,软件开发越来越重要,软件开发基于一定的范型,软件设计范型是一组概念模式的集合,这些概念模式可以指导程序设计人员如何去构思用程序解决目标问题的实现方案,并为所构思的实现方案提供了构造程序的框架。我认为一种程软件设计范型至少应该具备以下特性:

1.为程序设计人员提供一种独特的虚拟计算机系统的编程接口;

2.程序具有独特的结构单元和结构关系特性;

剩余内容已隐藏,您需要先支付后才能查看该篇文章全部内容!

2. 课题关键问题和重难点

在实现面向组件的程序中,需要有一定的编程语言的基础。为此也必须熟练掌握并且灵活运用构造软件范型中的组件模型的设计思想及其程序构造的方法。作为一个可以生成组件模型的工具,它要求可以制作出满足用户需求的组件模型。为了能够实现这种功能,它需要了解基于组件模型的构造:难点在于

(1)编辑部分,可对打开的组件定义,进行一定的编辑处理,以及可以修改相关参数,这就要考虑到生成组件时的大致模型;

(2)在视图部分,它需要可以实现两种视图,并且可以相互切换,比较难的部分是自己要用图片来显示用户构造出的不同的组件;

(3)作为一个用户自定义生成组件的工具,要能根据用户自己的需求来进行设计,这就要求工具得能够设计出用户想要的组件,如果工具功能不完善,可能会出现用户定义的和最后生成的组件出现误差。

剩余内容已隐藏,您需要先支付后才能查看该篇文章全部内容!

3. 国内外研究现状(文献综述)

随着计算机技术的发展和应用范围的不断延伸,作为计算机灵魂的软件系统,其规模也在不断扩大,结构越来越复杂,代码越来越长、维护越来越困难,从过去几百行代码扩大到几万甚至几十万、几百万行代码的软件系统俯首皆是。因此,设计一个功能完善、结构优良,开发效率高,稳定性和安全性强,扩展方便,维护简单,易于复用,生命周期长,投资成本低的软件系统,一直是系统管理、设计和开发者所追求的目标之一。软件发展的实践证明,模块化的分层设计模型是提高系统可用性和可维护性的主要途径。分层模型设计,既将整个软件系统划分为若干个相互独立的层次进行描述,层与层之间通过事先约定的接口相互通讯。某个层只负责一个或多个功能,各负其则,不越俎代庖。分层设计把一个复杂的问题分而治之,降低了复杂性,功能清晰、易于实现、修改和维护。分层设计可以分为面向过程、面向对象、面向组件等设计模式。面向组件的设计则既可用面向过程,也可用面向对象的语言来实现。由于面向组件的设计,系统的耦合度低、复用性强、维护容易,已经成为软件系统设计和开发的主流技术。组件软件技术的基本思想是:将大而复杂的软件应用分成一系列可先行实现、易于开发、理解和调整的软件单元组件。每个组件功能确定,单独设计,分开编码,最后用组件组装应用,完成系统开发和部署。因此,以组件为基础的软件系统解决方案,开发效率高,投资少,维护成本低,复用能力强,软件升级简单。

组件技术的发展现状目前常用的组件框架模型,一类是与某一计算机操作系统密切相关,而另一类是跨计算机操作系统平台的。前者的典型代表是com组件对象模型,以及在此基础上发展起来的activex、dcom、com 、mts和.net等技术。com组件具有二进制一级的兼容性,基本上与计算机编程语言无关,其缺点是目前只能运行在windows操作系统平台上,而不能在linux和unix系统中运行。com并不只是面向对象的组件对象模型,它既可用面向过程,也可用面向对象的语言编码。但多采用的编码语言是vc++、vb和delphi,性能要求高的场合也可用c语言来编码。com已经广泛使用在windows操作系统中,浏览器、邮件收发系统,web服务器、字处理软件中都广泛使用com组件。跨计算机操作系统平台的组件模型其典型代表是corba,corba主要使用在unix类型的操作系统中,但它也可在windows平台上运行。从计算机语言来讲,组件模型有以java语言为代表的框架和以c语言为基础的框架。前者在理论上可以跨平台运行,底层平台支持是jvm技术,而后者则与虚拟机无关,直接在操作系统中运行,因此,速度快,运行效率高。从应用系统的角度来讲,目前市场上,主要是j2ee和.net的竞争,两者理论上没有本质的区别,都是采用虚拟机技术。但j2ee可以跨平台运行,而.net则基本不行。在企业级的应用系统中,以java技术为基础的j2ee似乎更占优势。java和.net技术各有特长,因此,在信息系统建设中,应该允许两种技术存在,取长补短,协同发展,最大限度地提高系统开发的性价比和稳定性。

组件框架的体系结构,描述组件的要素组件是事先定义了编程接口和功能、相互独立的软件单元。一个组件一般有组件标识符、接口、创建方法和功能等要素组成。组件标识符也就是组件的名字,在整个体系结构中必须是唯一的,它是客户程序使用组件的唯一标识。如在com规范中,组件用一个128位的clsid,通过注册表将clsid与组件真实的物理文件名关联,实现组件的位置无关性。而j2ee框架中的组件则多使用名称服务和事先约定的特殊字符串表示。组件接口是组件与客户程序、容器交互和通讯的api。具体包括函数名称、参数和参数类型等内容。如在java语言中可用接口表示,在c语言中用相互有关系的一组函数表示,在c 中则可用虚函数描述。组件多有组件工厂创建,组件工厂也是组件,其创建一般由组件框架提供的系统函数来生成。组件的功能定义了组件需要完成的事情。通常情况下,组件标识符、组件接口、创建方法是组件对用户程序的契约和承诺,设计好后不能轻易改变,但组件的功能可以修改,体现多态性。组件框架通常由容器、组件和粘合剂三部分组成。容器就是一个根据框架体系结构的api管理应用程序组件以及提供api访问的系统运行环境,容器是一个递归概念,它也是组件。组件则是遵循容器规范、实现api接口的功能部件。粘合剂主要供容器用来组装组件之间的相互关系,其多表现为一个或多个部署描述符和配置文件,流行的描述语法格式包括xml、属性文件和windows系统中常用的段节式结构等。通过粘合剂,整个框架就能够实现组件的动态加载、相互去耦和多态性。组件框架体系结构也具有递归结构,即框架之中存在框架。组件框架的通用体系结构除了上述三个功能部件外,还包括要求应用程序必须实现的组件协议api、容器服务api,容器声明服务api等。后两者一般由容器提供商开发,供应用程序组件通过容器上下文环境引用。常见的组件体系结构j2ee、struts、spring、picocontainer等均基于上述结构设计,具有非常高的开放性和可扩展性。

剩余内容已隐藏,您需要先支付后才能查看该篇文章全部内容!

4. 研究方案

程序范型实验工具的制作过程包含了界面设计部分、代码编辑部分、测试运行部分。

这次程序范型实验工具的制作中,界面设计部分,首先自己要有大致的界面框架,在这个界面中有哪些功能按钮或者是有哪些下拉菜单,然后在进行排版,来完成界面的设计。

代码编码部分,将会通过自身的学习进行编写,按照界面设计时所给的功能,进行代码编写,来实现每个功能,这一部分会花很多时间,来进行设计、调整以及实现主程序的调用,最后达到用户使用时,可以实现自己的组件模型。

测试部分,最后这个程序范型实验工具完成时,由自己来作为用户,进行组件设计,并测试是否生成的组件,满足用户自己的需求,如果有误差,可能还会对前面的设计部分进行一定的调整,以尽可能的实现用户对这个生成组件的程序范型实验工具的需求。

剩余内容已隐藏,您需要先支付后才能查看该篇文章全部内容!

5. 工作计划

(一)初步实施阶段(1-4周)对程序范型实验工具设计与实现(组件模型/编译与执行)学进行学习,了解一些基本的组件对象模型的知识,以及组件对象模型的设计,对生成组件模型的工具的开发建立大致设想。对组件模型进行全面学习,通过制作这种程序范型实验工具来了解和学习与其相关的各项技术。

(二)中期实施阶段(5-9周)设计出程序范型实验工具的基本架构,包含实验工具的文件菜单下拉框(有新建,打开,保存三个按钮,新建:通过对话框的交互,构造一个满足要求的组件定义;保存:通过文件流,将组件定义写入到文件中,生成某种语言的具体组件定义;打开:通过对话框打开一个已存在的组件定义,以便对其处理;)编辑菜单(对打开的组件定义进行一定的编辑处理,可以修改相关参数;)视图菜单(有:代码和设计两种视图)。通过c#语言进行此项程序范型实验工具的制作。

(三)后期检验与优化阶段(10-11周)对这程序范型实验工具进行各项测试,总结其中的优势和缺陷,编写、修改、完善论文。

剩余内容已隐藏,您需要先支付 10元 才能查看该篇文章全部内容!立即支付

课题毕业论文、开题报告、任务书、外文翻译、程序设计、图纸设计等资料可联系客服协助查找。