免费智能真题库 > 历年试卷 > 软件设计师 > 2009年上半年 软件设计师 上午试卷 综合知识
  第38题      
  知识点:   面向对象分析   应用领域   面向对象分析与设计
  关键词:   面向对象分析与设计   对象   面向对象   面向对象分析        章/节:   面向对象基础知识       

 
面向对象分析与设计中,(38)是应用领域中的核心类,一般用于保存系统中的信息以及提供针对这些信息的相关处理行为;(39)是系统内对象和系统外参与者的联系媒介;(40)主要是协调上述两种类对象之间的交互。
 
 
  A.  控制类
 
  B.  边界类
 
  C.  实体类
 
  D.  软件类
 
 
 

 
  第39题    2010年下半年  
   47%
开-闭原则(Open-Closed Principle,OCP)是面向对象的可复用设计的基石。开-闭原则是指一个软件实体应当对(37)开放,对(38)关闭..
  第38题    2010年下半年  
   22%
开-闭原则(Open-Closed Principle,OCP)是面向对象的可复用设计的基石。开-闭原则是指一个软件实体应当对(37)开放,对(38)关闭..
  第39题    2020年下半年  
   60%
进行面向对象系统设计时,针对包中的所有类对于同一类性质的变化;一个变化若对一个包产生影响,则将对该包中的所有类产生影响,..
   知识点讲解    
   · 面向对象分析    · 应用领域    · 面向对象分析与设计
 
       面向对象分析
        面向对象分析的目的是为了获得对应用问题的理解。理解的目的是确定系统的功能、性能要求。
        面向对象分析包含5个活动,即认定对象、组织对象、描述对象间的相互作用、定义对象的操作和定义对象的内部信息。
               认定对象
               在应用领域中,按自然存在的实体确立对象。在定义域中,首先将自然存在的"名词"作为一个对象,这通常是研究问题、定义域实体的良好开始。通过实体间的关系寻找对象常常没有问题,而困难在于寻找(选择)系统关心的实质性对象,实质性对象是系统稳定性的基础。
               组织对象
               分析对象间的关系,将相关对象抽象成类,其目的是为了简化关联对象,利用类的继承性建立具有继承性层次的类结构。抽象类时可从对象间的操作或一个对象是另一个对象的一部分来考虑,如房子由门和窗构成,门和窗是房子类的子类。由对象抽象类,通过相关类的继承构造类层次,所以说系统的行为和信息间的分析过程是一种迭代表征过程。
               描述对象间的相互作用
               描述出各对象在应用系统中的关系,如一个对象是另一个对象的一部分、一个对象与其他对象间的通信关系等。这样可以完整地描述每个对象的环境,由一个对象解释另一个对象,以及一个对象如何生成另一个对象,最后得到对象的界面描述。
               定义对象的操作
               当考虑对象的界面时,自然要考虑对象的操作。其操作有从对象直接标识的简单操作,如创建、增加和删除等;也有更复杂的操作,如将几个对象的信息连接起来。一般而言,应避免对象太复杂,当连接的对象很复杂时,可将其标识为新对象。当确定对象的操作后,再定义对象的内部。对象内部定义包括其内部数据信息、信息存储方法、继承关系以及可能生成的实例数等属性。
 
       应用领域
        Java目前主要应用于服务器端的企业级应用(Servlet、JSP)、手持设备(J2ME、K-Java、无线Java)、普通网页(Applet)、普通应用程序。
 
       面向对象分析与设计
               面向对象分析
               面向对象分析(Object-Oriented Analysis,OOA)的目标是完成对所解问题的分析,确定待开发软件系统要做什么,建立系统模型。为了达到这一目标,必须完成以下任务:
               (1)在客户和软件工程师之间沟通基本的用户需求。
               (2)标识类(包括定义其属性和操作)。
               (3)刻画类的层次结构。
               (4)表示类(对象)之间的关系。
               (5)为对象行为建模。
               (6)递进地重复任务(1)至任务(5),直至完成建模。
               其中任务(2)至任务(4)刻画了待开发软件系统的静态结构,任务(5)刻画了系统的动态行为。
               面向对象分析的一般步骤如下:
               (1)获取客户对系统的需求,包括标识场景和用例,以及构建需求模型。
               (2)用基本的需求为指南来选择类和对象(包括属性和操作)。
               (3)定义类的结构和层次。
               (4)建造对象-关系模型。
               (5)建造对象-行为模型。
               (6)利用用例/场景来复审分析模型。
               面向对象设计
               面向对象设计(Object-Oriented Design,OOD)是将OOA所创建的分析模型转化为设计模型,其目标是定义系统构造蓝图。OOA与OOD之间不存在鸿沟,采用一致的概念和一致的表示法,OOD同样应遵循抽象、信息隐蔽、功能独立、模块化等设计准则。
               OOD在复用OOA模型的基础上,包含与OOA对应如下五个活动:
               (1)识别类及对象。
               (2)定义属性。
               (3)定义服务。
               (4)识别关系。
               (5)识别包。
               OOD需要考虑实现问题,如根据所用编程语言是否支持多继承或继承,而调整类结构。
               面向对象程序设计
               面向对象程序设计(Object Oriented Programming,OOP)是采用面向对象程序设计语言,采用对象、类及其相关概念所进行的程序设计,将设计模型转化为在特定的环境中系统,即实现系统。通过面向对象的分析与设计所得到的系统模型可以由不同的编程语言实现。一般采用如Java、C++、Smalltalk等面向对象语言,也可以用非面向对象语言实现,如C语言中的结构。
               面向对象方法中的五大原则
               (1)单一责任原则(Single Responsibility Principle,SRP)。当需要修改某个类的时候原因有且只有一个,让一个类只做一种类型责任。
               (2)开关原则(Open&Close Principle,OCP)。软件实体应该是可扩展,即开放的;而不可修改的,即封闭的。
               (3)里氏替换原则(Liskov Substitution Principle,LSP)。在任何父类可以出现的地方,都可以用子类的实例来赋值给父类型的引用。当一个子类的实例应该能够替换任何其超类的实例时,它们之间才具有是一个(is-a)关系。
               (4)依赖倒置原则(Interface Segregation Principle,ISP)。高层模块不应该依赖于低层模块,二者都应该依赖于抽象;抽象不应该依赖于细节,细节应该依赖于抽象。
               (5)接口分离原则(Dependence Inversion Principle,DIP)。依赖于抽象,不要依赖于具体,同时在抽象级别不应该有对于细节的依赖。这样做的好处就在于可以最大限度地应对可能的变化,即:使用多个专门的接口比使用单一的总接口总要好。
   题号导航      2009年上半年 软件设计师 上午试卷 综合知识   本试卷我的完整做题情况  
1 /
2 /
3 /
4 /
5 /
6 /
7 /
8 /
9 /
10 /
11 /
12 /
13 /
14 /
15 /
 
16 /
17 /
18 /
19 /
20 /
21 /
22 /
23 /
24 /
25 /
26 /
27 /
28 /
29 /
30 /
 
31 /
32 /
33 /
34 /
35 /
36 /
37 /
38 /
39 /
40 /
41 /
42 /
43 /
44 /
45 /
 
46 /
47 /
48 /
49 /
50 /
51 /
52 /
53 /
54 /
55 /
56 /
57 /
58 /
59 /
60 /
 
61 /
62 /
63 /
64 /
65 /
66 /
67 /
68 /
69 /
70 /
71 /
72 /
73 /
74 /
75 /
 
第38题    在手机中做本题