面向对象软件开发主要有哪些过程?
面向对象(Object Oriented,OO)是当前计算机界关心的重点,它是90年代软件开发方法的主流。
面向对象的概念和应用已超越了程序设计和软件开发,扩展到很宽的范围。
如数据库系统、交互式界面、应用结构、应用平台、分布式系统、网络管理结构、CAD技术、人工智能等领域。
谈到面向对象,这方面的文章非常多。
但是,明确地给出对象的定义或说明对象的定义的非常少——至少我现在还没有发现。
其初,“面向对象”是专指在程序设计中采用封装、继承、抽象等设计方法。
可是,这个定义显然不能再适合现在情况。
面向对象的思想已经涉及到软件开发的各个方面。
如,面向对象的分析(OOA,Object Oriented Analysis),面向对象的设计(OOD,Object Oriented Design)、以及我们经常说的面向对象的编程实现(OOP,Object Oriented Programming)。
许多有关面向对象的文章都只是讲述在面向对象的开发中所需要注意的问题或所采用的比较好的设计方法。
看这些文章只有真正懂得什么是对象,什么是面向对象,才能最大程度地对自己有所裨益。
这一点,恐怕对初学者甚至是从事相关工作多年的人员也会对它们的概念模糊不清。
面向对象是当前计算机界关心的重点,它是90年代软件开发方法的主流。
面向对象的概念和应用已超越了程序设计和软件开发,扩展到很宽的范围。
如数据库系统、交互式界面、应用结构、应用平台、分布式系统、网络管理结构、CAD技术、人工智能等领域。
一、传统开发方法存在问题 1.软件重用性差 重用性是指同一事物不经修改或稍加修改就可多次重复使用的性质。
软件重用性是软件工程追求的目标之一。
2.软件可维护性差 软件工程强调软件的可维护性,强调文档资料的重要性,规定最终的软件产品应该由完整、一致的配置成分组成。
在软件开发过程中,始终强调软件的可读性、可修改性和可测试性是软件的重要的质量指标。
实践证明,用传统方法开发出来的软件,维护时其费用和成本仍然很高,其原因是可修改性差,维护困难,导致可维护性差。
3.开发出的软件不能满足用户需要 用传统的结构化方法开发大型软件系统涉及各种不同领域的知识,在开发需求模糊或需求动态变化的系统时,所开发出的软件系统往往不能真正满足用户的需要。
用结构化方法开发的软件,其稳定性、可修改性和可重用性都比较差,这是因为结构化方法的本质是功能分解,从代表目标系统整体功能的单个处理着手,自顶向下不断把复杂的处理分解为子处理,这样一层一层的分解下去,直到仅剩下若干个容易实现的子处理功能为止,然后用相应的工具来描述各个最低层的处理。
因此,结构化方法是围绕实现处理功能的“过程”来构造系统的。
然而,用户需求的变化大部分是针对功能的,因此,这种变化对于基于过程的设计来说是灾难性的。
用这种方法设计出来的系统结构常常是不稳定的 ,用户需求的变化往往造成系统结构的较大变化,从而需要花费很大代价才能实现这种变化。
二、面向对象的基本概念 (1)对象。
对象是人们要进行研究的任何事物,从最简单的整数到复杂的飞机等均可看作对象,它不仅能表示具体的事物,还能表示抽象的规则、计划或事件。
(2)对象的状态和行为。
对象具有状态,一个对象用数据值来描述它的状态。
对象还有操作,用于改变对象的状态,对象及其操作就是对象的行为。
对象实现了数据和操作的结合,使数据和操作封装于对象的统一体中 (3)类。
具有相同或相似性质的对象的抽象就是类。
因此,对象的抽象是类,类的具体化就是对象,也可以说类的实例是对象。
类具有属性,它是对象的状态的抽象,用数据结构来描述类的属性。
类具有操作,它是对象的行为的抽象,用操作名和实现该操作的方法来描述。
(4)类的结构。
在客观世界中有若干类,这些类之间有一定的结构关系。
通常有两种主要的结构关系,即一般--具体结构关系,整体--部分结构关系。
①一般——具体结构称为分类结构,也可以说是“或”关系,或者是“is a”关系。
②整体——部分结构称为组装结构,它们之间的关系是一种“与”关系,或者是“has a”关系。
(5)消息和方法。
对象之间进行通信的结构叫做消息。
在对象的操作中,当一个消息发送给某个对象时,消息包含接收对象去执行某种操作的信息。
发送一条消息至少要包括说明接受消息的对象名、发送给该对象的消息名(即对象名、方法名)。
一般还要对参数加以说明,参数可以是认识该消息的对象所知道的变量名,或者是所有对象都知道的全局变量名。
类中操作的实现过程叫做方法,一个方法有方法名、参数、方法体。
消息传递如图10-1所示。
二、面向对象的特征 (1)对象唯一性。
每个对象都有自身唯一的标识,通过这种标识,可找到相应的对象。
在对象的整个生命期中,它的标识都不改变,不同的对象不能有相同的标识。
(2)分类性。
分类性是指将具有一致的数据结构(属性)和行为(操作)的对象抽象成类。
一个类就是这样一种抽象,它反映了与应用有关的重要性质,而忽略其他一些无关内容。
任何类的划分都是主观的,但必须与具体的应用有关。
(3)继承性。
继承性是子...
知道开发一个App的具体步骤吗?
1需要制定出一个完整的需求文档,功能文档,流程图,时序图。
2、交互设计、UI设计——设计出基本且完善的原型图和app基础的交互设计效果,之后再根据这些设计出完整的UI界面并学会切图,一些需要做自适应的素材图片需要做点9patch。
这里还需要你懂得px,pt和dp之间的换算,屏幕密度的换算和相互之间的系数,以便你的app能完美适应不同分辨率设备。
其中交互设计需要你懂得很多人机操作的技巧经验,掌握Axure等交互工具的使用,UI设计需要你掌握Photoshop和Illustrator等操作。
3、使用ADT之类的开发环境进行app软件开发,你最基本的也得掌握java语言,熟悉android环境和机制。
4、如果不是单机版的app,需要用到服务器,那你还得掌握WebService相关知识和开发语言,常用的有ASP.Net,PHP,JSP等。
5、熟悉并能开发数据库。
6、某些功能需要做算法,这还需要一定得专业知识,尤其是数学基础。
7、熟悉API接口开发,这里包括你自行开发API的能力以及调用第三方API的经验。
8、熟悉TCP/IP,socket等网络协议和相关知识。
CAD如何做现状图的详细步骤
我是专业学CAD制图的,一时搞不明白B5纸是什么纸,汗!!!!! 像上面兄弟说的CAD一般采用A4纸,具体大小为420x 297 (外框).内框为作图区域,与外框距离为左边25其余3边5.内框右下角为信息框也是有大小规定的,但一时间无法说明白.画的图形一般分零件图装备图两种,零件图一般花出3视图和轴测图4个图形.3视图要"长对正,宽相等,高平齐"4个图要排列大方美观.装配图要指出个部分零件,图上用引线标出序号,在信息标题框上面由下到上写出各个零件的名称数量材料等等信息. 我晕,太多了,不说了!!
CAD编程软件怎么用?
CAD不是编程软件,是计算机辅助设计(Computer Aide Design)是做设计绘图用的(机械模具建筑装修)等。
编程软件可用MASTERCAM,UG等。
例如:atocad能够使通过LISO编写各种定制度绘图命令,从而达到控制绘图的效果。
LISP语言(全名LISt Processor,即表处理语言),由约翰·麦卡锡在1960年左右创造的一种基于λ演算的函数式编程语言。
就此编写了一个简单的程序,以期对用户起到抛砖引玉的作用。
方法/步骤创建一个cad,新建一个工程,在lisp编辑器中编写一下程序,程序的作用为计算线段总长度,并选择另存为位置,保存文件lsp文件。
使用cad加载lsp文件,选择lsp文件位置。
在命令栏点击l,用cad绘制几条线段。
在命令栏输入ll,选择所有线段,则在图下计算并显示出了所有线段的总长度。
用lisp的代码为(defun c:LL ()(setvar "cmdecho" 1)(setq en (ssget (list '(0 . "spline,arc,line,ellipse,LWPOLYLINE"))))(setq i 0)(setq ll 0)(repeat (sslength en) (setq ss (ssname en i)) (setq endata (entget ss)) (command "lengthen" ss "") (setq dd (getvar "perimeter"))(setq ll (+ dd ll)) (setq i (1+ i))) (princ "所选线条总长为:")(princ ll)(princ))...
CAD/CAM的二次开发毕业论文
摘要:对Pro/Engineer的CAD二次开发技术进行探讨,深入研究Pro/Engineer的几种二次开发工具,并通过对Pro/TOOLKIT二次开发工具包的研究和分析,提出了基于三维模型的用户自定义参数设计,最后利用Pro/TOOLKIT开发模块和Visual C++完成建立齿轮参数化设计。
关键词:二次开发 Pro/TOOLKIT开发工具 参数化设计一、引言在CAD技术日益普及的今天,传统的二维CAD软件正逐渐被三维CAD软件所替代。
在众多软件中,PTC公司的Pro/Engineer是具有代表性的优秀软件之一。
自从面世以来,它以尺寸驱动、基于特征、单一全关联的数据库等优点深受用户好评。
企业根据产品对象的不同,在使用CAD软件时也各有侧重。
企业要想最大效率的发挥出软件的功效,必须根据企业的产品特征和企业状况对软件进行二次开发。
本文列举了在软件Pro/Engineer中常用的二次开发工具与方法,并着重介绍了用Pro/TOOLKIT对Pro/Engineer进行开发时的步骤。
最后通过“齿轮快速设计系统”的开发实例进一步说明开发时的技巧。
二、开发工具Pro/Engineer为用户提供了丰富的二次开发工具。
常用的有Pro/Program、簇表(Family Table)、用户自定义特征(UDF)、J-Link和Pro/Toolkit等。
为了防止混淆,以下特别对这几种开发工具进行比较和说明。
1.Pro/ProgramPro/Engineer对每个零件或组件模型都有一个主要的设计步骤和参数列表,那就是Pro/Program。
它是零件与组件自动化设计的一种有效工具。
设计人员可使用类似BASIC的高级语言,根据需要来编写该模型的Program。
包括:控制特征的出现与否、尺寸的大小、零件与组件的出现与否、零件与组件的个数等。
然而,Pro/Engineer就可以通过运行该程序来读取此零件或组件,并通过人机交互的方法得到不同的几何形状,以满足产品设计的需要。
2.簇表(Family Table)簇表可用于管理具有相同或相近结构的零件,特别适用于标准零件的管理。
它是通过建立基础零件为父零件,然后在簇表中定义各个控制参数来控制模型的形状及大小。
这样,就可通过改变各个参数的值来控制派生的各种子零件。
3.用户自定义特征(UDF)设计人员在使用Pro/Engineer进行零件设计时,经常会遇到一些重复出现的特征。
例如,螺钉的座孔等,因此设计人员就要花费许多时间进行这种重复性的操作。
用户自定义特征则能将同一特征用于不同的零件上,或将若干个系统特征融合为一个自定义特征,使用时作为一个全局出现。
这样,设计人员就可以建立自己的用户自定义特征库,根据产品特征快速生成几何模型,从而极大地提高了设计人员的工作效率。
4.Pro/TOOLKITPro/TOOLKIT是PTC为Pro/Engineer制定的开发工具包,它提供了应用程序接口(API),使客户或第三方厂商具有扩展Pro/Engineer功能的能力。
Pro/TOOLKIT使用面向对象风格C编程,且提供一个庞大、用于底层资源调用的C语言函数和头文件,外部应用程序可借此访问Pro/Engineer的数据库和应用程序。
三、Pro/TOOLKIT的运作方式Pro/TOOLKIT应用程序代码集成进入Pro/Engineer的标准方法是通过“动态链接库”(Dynamical Linked Libraries, DLLs)完成的。
当编译Pro/TOOLKIT应用程序的C代码,并将其链接至Pro/TOOLKIT库文件时,就创建了一个可链接至Pro/Engineer可执行文件的对象库文件,这个可执行文件将在Pro/Engineer启动时被执行。
这种方法称为“DLL模式”。
此外,Pro/TOOLKIT还支持第二种方法的集成,即“多进程”(Multiprocess),或称为“衍生模式”(Spawned Mode)。
在这种模式下,Pro/TOOLKIT应用程序将被编译和链接,从而形成一个独立的执行文件。
这个可执行文件将是Pro/Engineer的衍生,并作为Pro/Engineer工作任务的一个子程序来运行。
在DLL模式中,Pro/TOOLKIT应用程序与Pro/Engineer之间的信息交换,是通过直接函数调用完成的。
而在多进程模式下,内部进程信息系统会传递必要的信息,以确定两进程间的函数及其所需参数来模拟直接函数调用,以实现和DLL模式中相同的效果。
四、创建齿轮参数设计应用程序的基本方法1.利用VC向导创建齿轮参数设计应用程序程序设计的主要工作在三个方面:1)编写下拉菜单的(. txt)文件和对话框的(.res)资源文件;2)按Pro/TOOLKIT应用程序Pro/Engineer环境运行的要求设计接口与程序运行结束时的终止程序;3)根据功能需求设计Pro/TOOLKIT应用程序主体部分。
其程序部分的主体结构如下:int user_initialize( nt argc, char * argv[ ] ) //其功能相当于C语言中的main( )函数{ //调用函数 ……(该部分是用来初始化Pro/TOOLKIT应用程序且创建图形窗口,这部分包括了应用程序的所有初始化进程)return(0)} void user_terminate( ){ ……(该部分是用来结束Pro/TOOLKIT应用程序)return;}func( )(该部分是主要添加要完成预定功能的一个或多个的C语言代码)编辑完源代码后要用Visual C++ 6.0进行编译,首先要设置好编译环境:一是设置好包含头文件的路径;二是设置好连接所需库文件的路径。
pro/engineer二次开发关键技术研究 来自: 免费论文网 www.paper800.com 编译连接成功生成可执行...
【软件开发方法都有哪些】什么是软件开发?1.简单介绍一下软件开发...
什么是软件开发 软件开发的内容是:需求、设计、编程和测试! 需求:不仅仅是用户需求,应该是开发中遇到的所有的需求。
比如,你首先要知道做这个项目是为了解决什么问题;测试案例中应该输入什么数据……为了清楚地知道这些需求,你经常要和客户、项目经理等交流。
设计:编码前,肯定有个计划告诉你要做什么,结构是怎样等等。
你一定要按照这个来做,否则可能会一团糟。
编程:如果在项目截止日,你的程序不能跑起来或达不到客户的要求,你就拿不到钱。
测试:目的是让你知道,什么时候算是完成了。
如果你聪明,你就应该先写测试,这样可以及时知道你是否真地完成了。
否则,你经常会不知道,到底有哪些功能是真正完成了,离预期目标还差多远。
软件开发中,客户和开发人员都有自己的基本权利和义务。
客户: 定义每个用户需求的商业优先级; 制订总体计划,包括用多少投资、经过多长时间、达到什么目的; 在项目开发过程中的每个工作周,都能让投资获得最大的收益; 通过重复运行你所指定的功能测试,准确地掌握项目进展情况; 能随时改变需求、功能或优先级,同时避免昂贵的再投资;能够根据各种变化及时调整项目计划; 能够随时取消项目;项目取消时,以前的开发工作不是一堆垃圾,已开发完的功能是合乎要求的,正在进行或未完成的的工作则应该是不难接手的。
开发人员: 知道要做什么,以及要优先做什么; 工作有效率; 有问题或困难时,能得到客户、同事、上级的回答或帮助; 对工作做评估,并根据周围情况的变化及时重新评估; 积极承担工作,而不是消极接受分配; 一周40小时工作制,不加班。
系统开发指的是什么?
软件开发是根据用户要求建造出软件系统或者系统中的软件部分的过程。
软件开发是一项包括需求捕捉,需求分析,设计,实现和测试的系统工程。
软件一般是用某种程序设计语言来实现的。
通常采用软件开发工具可以进行开发。
软件分为系统软件和应用软件。
软件并不只是包括可以在计算机上运行的程序,与这些程序相关的文件一般也被认为是软件的一部分。
软件设计思路和方法的一般过程,包括设计软件的功能和实现的算法和方法、软件的总体结构设计和模块设计、编程和调试、程序联调和测试以及编写、提交程序。
随着计算机技术广泛应用到社会生活的各个领域,使得软件开发需求持续攀升。
全国IT行业软件人才总需求量达数十万之多。
软件人才主要在各大软件公司、企事业单位、高等院校、各大研究所、国防等重要部门从事软件设计开发、应用与研究工作。
软件开发包括:项目管理控制程序、需求分析控制程序、概要设计控制程序、编码控制程序、设计评审控制程序、配置管理控制程序、软件工具控制程序、测试和验收控制程序等。
以上就是这软件开发的解释,本答案参考于大大神网上的资料,大大神是软件协同供应链平台,可以实现IT软件在线研发、软件在线交易、IT软件供应链服务,解决idea的商业模式创新、软件工程化设计、软件研发、软件测试、产业投资等需求。
大大神网注册网址:https://dadashen.com?r=4bdx848...
CAD制图步骤
CAD简单制图步骤: 1.建立图层,包括图层名称、线宽、颜色、线型,如果没有需要的线型,单击“加载”按钮,可以先加载你所需要的线型,建立图中需要的所有图层;2.确定表达方案,开始画图,选择要画线型的图层,一般是先画中心线,确定基准,然后依次画完不同线型的图形,必要时用修剪等的按钮来完成图形; 3.剖面线的添加。
首先选择剖面类型,角度,比例,然后选择剖面; 4.尺寸标注,包括基本尺寸及基本公差,形位公差,粗糙度,剖面符号; 5.编写技术要求; 6.添加图框及标题栏,如果是装配图还有标注零部件序号及明细表。
...
转载请注明出处51数据库 » cad软件的开发方法与步骤