面向对象软件开发主要有哪些过程?
面向对象(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)继承性。
继承性是子...
有一些软件是设置cpu调速和模式等其他系统设置,一但把这个软件的...
UI即User Interface(用户界面)的简称。
UI设计则是指对软件的人机交互、操作逻辑、界面美观的整体设计。
好的UI设计不仅是让软件变得有个性有品味,还要让软件的操作变得舒适、简单、自由、充分体现软件的定位和特点。
UI还有其它的意义,如Unit Interval,Univ of Iowa,Unlock Instruction,Urgent Interrupt。
目录综述定义编码设计UI设计UI设计师研究工具研究人与界面的关系研究人中国现状发展阶段部门设立设计流程确认目标用户采集目标用户的习惯交互方式提示和引导用户一致性原则设计目标一致元素外观一致交互行为一致可用性原则可理解可达到可控制未来展望综述定义 编码设计 UI设计UI设计师 研究工具 研究人与界面的关系 研究人中国现状发展阶段部门设立设计流程 确认目标用户 采集目标用户的习惯交互方式 提示和引导用户一致性原则 设计目标一致 元素外观一致 交互行为一致可用性原则 可理解 可达到 可控制未来展望展开 编辑本段综述 用户界面UI = User Interface,用户界面,也称人机界面。
是指用户和某些系统进行交互方法的集合,这些系统不单单指电脑程序,还包括某种特定的机器,设备,复杂的工具等。
UI = Unit Interval,单位时间间隔,通常在通信信号的抖动测试中用来表示抖动幅度的单位,表示一个等步信号的两个相邻的有效瞬时之间的标称时间差。
UI = Univ of Iowa,爱荷州大学(美国)。
UI = Unlock Instruction,开锁指令。
UI = Urgent Interrupt,紧急中断。
编辑本段定义编码设计 软件设计可分为两个部分:编码设计与UI设计。
编码设计大家都很熟悉,但是UI设计还是一个很陌生的词,即使一些专门从事网站与多媒体设计 UI设计的人也不完全理解UI的意思。
UI的本意是用户界面,是英文User和 interface的缩写。
从字面上看是用户与界面2个组成部分,但实际上还包括用户与界面之间的交互关系。
界面设计,在漫长的软件发展中,界面设计工作一直没有被重视起来。
做界面设计的人也被贬义的称为“美工”。
其实软件界面设计就像工业产品中的工业造型设计一样,是产品的重要买点。
一个友好美观的界面会给人带来舒适的视觉享受,拉近人与电脑的距离,为商家创造卖点。
界面设计不是单纯的美术绘画,他需要定位使用者、使用环境、使用方式并且为最终用户而设计,是纯粹的科学性的艺术设计。
检验一个界面的标准即不是某个项目开发组领导的意见也不是项目成员投票的结果,而是最终用户的感受。
所以界面设计要和用户研究紧密结合,是一个不断为最终用户设计满意视觉效果的过程。
UI设计 在人和机器的互动过程(Human Machine Interaction)中,有一个层面,即我们所说的界面(interface)。
从心理学意义来分,界面可分为感觉(视觉、触觉、听觉等)和情感两个层次。
用户界面设计是屏幕产品的重要组成部分。
界面设计是一个复杂的有不同学科参与的工程,认知心理学、设计学、语言学等在此都扮演着重要的角色。
用户界面设计的三大原则是:置界面于用户的控制之下;减少用户的记忆负担;保持界面的一致性。
编辑本段UI设计师研究工具 UI设计从工作内容上来说分为3个方向。
图 它主要是由UI 研究的3个因素决定的, 其分别是研究工具,研究人与界面的关系,研究人。
研究界面----图形设计师Graphic UI designer 国内目前大部分UI工作者都是从事这个行业。
也有人称之为美工,但实际上不是单纯意义上的美术工人,而是软件产品的产品外形设计师。
这些设计师大多是美术院校毕业的,其中大部分是有美术设计教育背景,例如工业外形设计,装潢设计,信息多媒体设计等。
研究人与界面的关系 蓝色代表工具,红色代表关系,绿色代表人研究人与界面的关系---交互设计师,interaction designer 在图形界面产生之前,长期以来UI设计师就是指交互设计师。
交互设计师的工作内容就是设计软件的操作流程,树状结构,软件的结构与操作规范(spec)等。
一个软件产品在编码之前需要作的就是交互设计,并且确立交互模型,交互规范。
交互设计师一般都是软件工程师背景居多。
研究人 研究人----用户测试/研究工程师User experience engineer 任何的产品为了保证质量都需要测试,软件的编码需要测试,自然UI设计也需要被测试。
这个测试和编码没有任何关系,主要是测试交互设计的合理性以及图形设计的美观性。
测试方法一般都是采用焦点小组,用目标用户问卷的形式来衡量UI设计的合理性。
这个职位很重要,如果没有这个职位,UI设计的好坏只能凭借设计师的经验或者领导的审美来评判,这样就会给企业带来严重的风险性。
用户研究工程师一般是心理学人文学背景比较合适。
综上所述UI设计师就是:软件图形设计师、交互设计师和用户研究工程师。
编辑本段中国现状 目前在国内UI还是一个相对陌生的词,即便是一些设计人员也对这个词不太了解。
我们经常看到一些招聘广告写着:招聘界面美工、界面美术设计师等等。
这表明在国内对UI的理解还停留在美术设计方面,认为UI的工作只是描边画线,缺乏对用户交互的重要性的理解;另一方面在软件开发过程中还存在重技术而不重应用的现象。
许多商家认为软件产品的核心是技术,而UI仅...
多媒体计算机是指什么
一、多媒体计算机的基本概念 多媒体计算机作为教学媒体的一种,它同样是来存储、传递教育和教学信息的,只是在信息领域,"多媒体"中的"媒体"的含义不同于"教学媒体"这一教学媒介,无论是"多媒体计算机"还是"计算机多媒体,"这里的"多媒体"在信息领域都有其自身的特定含义。
(一)多媒体与多媒体技术 有关多媒体多媒体技术以及文本超文本、超媒体的概念请见前面有关章节,这里不再重复。
(二)多媒体的基本要素 多媒体包括文本、图形、静态图像、声音、动画、视频剪辑等基本要素。
在进行多媒体教学课件设计的,也就是从这些要素的作用、特性出发,在教育学、心理学等原理的指导下,充分构思、组织多媒体要素,发挥各种媒体要素的长处,为不同学习类型的学习者提供不同的学习媒体信息,从多种媒体渠道向学习者传递教育、教学信息。
1、文本 (1)文本的作用 多媒体教学课件可以通过文本向学生显示一定的教育教学信息,在学生用多媒体进行自主学习遇到因难时也可以提供一定的帮助、指导信息,使学生的学习顺利进行下去,一些功能齐备的教学软件还能根据学生的学习结果和从学生一方获得的反馈信息向学习提供一定的学习评价信息和相应指导信息。
另外,大部分教学软件都会用文本为软件的使用提供一定的使用帮助和导航信息,增强了软件的友好性和易操作性,软件的使用人员不用经过专门的培训就能根据屏幕上的帮助、导航信息使用操作学习软件。
最后,在一些教学软件中,教学软件能从学习者身上获得一定的反馈信息,实现信息提供者和接收者之间的信息的双向流动,加强了学习过程的反馈程度。
(2)文本信息的特点 计算机屏幕上的文本信息可以反复阅读,从容理解,不时间、空间的限制,但是,在阅读屏幕上显示的文本信息,特别是信息量较大时容易引起视觉疲劳,使学习者产生厌倦情绪。
另外,文本信息具有一定的抽象性,阅读者在阅读时,必须会?quot;译码"工作,即抽象的文字还原为相应事物,这就要多媒体教学软件使用者有一定的抽象思维能力和想象能力,不同的阅读者对所阅读的文本的理解也不完全相同。
(3)文本的开发与设计 ①普通文本的开发。
开发普通文本的方法一般有两种,如果文本量较大,可以用专用的字处理程序来输入加工,如:Microsoft Word、Word Pad等;如果文字不多,用多媒体创作软件自身的字的字符编辑器就足够了。
②图形文字的开发。
Microsoft Office 办公软件提供了艺术工具Microsoft Word Art,用Word 或Microsoft 等软件中插入对象的方法,可以制作丰富多彩、效果各异的效果字;用PhotoShop这一类的图形图像处理软件同样能制作图形文字。
③动态文字的开发。
在多媒体教学软件中,经常用一些有一定变化的动态文字来吸引学生的注意力,开发这些动态文字的软件很多,方法也很多。
首先,一般的多媒体体创作软件都提供了较为丰富的字符出现效果,象PowerPoint、Authorware等创作软件中 都有溶解、从左边飞入、百页窗等多种效果;其次也可以用动画制作软件来制作文字动画,像Cool3D这样的软件在制作文字动画时就非常简单方便。
(4)文本的格式与视觉诱导 多媒体中的文本为学习者提供了大量的教学信息,学习者可以通过阅读文本获得大量的教学信息。
如果设计多媒体文本时,给文本以丰富的格式,引导学习者的注意力,增加文本的的格式有以下几种: ① 段落对齐和左右缩进。
多媒体中的段落对齐主要有左对齐、居中、右对齐、两端对齐等,通过不同的对齐方式,多媒体教学软件的开发人员就能方便地控制文本在页面中的左右位置,另外,开发人员还可以通过文本的左右缩进技术控制文本在屏幕上的显示宽度。
② 字体、字号、风格及颜色。
一般的字处理软件和多媒体创作软件都提供字符的字体、字号、风格(下划线、斜体、粗体等)及颜色的支持,利用这些不同的字符效果就能突出显示教学信息中的重点和难点,吸引学生的注意力。
③ 多行文本及其滚动。
在某些情况下,一屏并不能显示所有的文本,但这些文本作为一个?逵植灰朔指畹搅硗庖黄辽舷允荆?馐本涂梢酝ü?龆?谋竟芾硭?械奈谋拘畔ⅲ?缺3至宋谋镜耐暾?裕?纸饩隽艘黄料允静幌碌奈侍狻?br> ④ 线性文本与非线性文本超文本。
用超文本技术开发的多媒体教学软件更接近学习者联想的特点,更符合学习者的身心特点,十分方便信息的查寻与检索,在多媒体应用中具有很大的潜力。
但是,超文本的开发所花的工作量远远超过线性文本的开发,从开发超文本所需的技术要求来讲,用一般的程序设计语言或字处理程序是很难做到的,要做到超文本的随意跳转,最好用面向对象的程序设计语言或专用的多媒体创作工具,如:Visual Basic、visual C++、PowerPoint、Authorware、Director、tool Book等。
(5)多媒体文本开发应注意的问题 在开发多媒体系统中的文本时,应注意使用合适的字体,应注意这样几个问题:一是在新的应用环境中安装这些字体,二是在多媒体系统中嵌入所用的字体。
另一种方法就是如果开发的文字是标题,那就把文字制作成图片文件,再插入到多媒体应用系统中...