免费智能真题库 > 历年试卷 > 系统架构设计师 > 2009年下半年 系统架构设计师 上午试卷 综合知识
  第54题      
  知识点:   基于事件的隐式调用   图形   编辑器   调试   功能描述   图形用户界面   用户界面
  关键词:   调试器   开发   图形用户界面   用户界面        章/节:   软件架构的风格       

 
某公司欲开发一个基于图形用户界面的集成调试器。该调试器的编辑器和变量监视器可以设置调试断点。当调试器在断点处暂停运行时,编辑程序可以自动卷屏到断点,变量监视器刷新变量数值。针对这样的功能描述,采用(54)的架构风格最为合适。
 
 
  A.  数据共享
 
  B.  虚拟机
 
  C.  隐式调用
 
  D.  显式调用
 
 
 

 
  第49题    2013年下半年  
   31%
“编译器”是一种非常重要的基础软件,其核心功能是对源代码形态的单个或一组源程序依次进行预处理、词法分析、语法分..
  第53题    2017年下半年  
   44%
系统中的构件和连接件都有一个顶部和一个底部,构件的顶部应连接到某连接件的底部,构件的底部则应连接到某连接的顶部,构件和构..
  第44题    2016年下半年  
   45%
(44)架构风格可以概括为通过连接件绑定在一起按照一组规则运作的并行构件。
   知识点讲解    
   · 基于事件的隐式调用    · 图形    · 编辑器    · 调试    · 功能描述    · 图形用户界面    · 用户界面
 
       基于事件的隐式调用
        基于事件的隐式调用风格的思想是构件不直接调用一个过程,而是触发或广播一个多事件。系统中的其他构件中的过程在一个或多个事件中注册,当一个事件被触发,系统自动调用在这个事件中注册的所有过程,这样,一个事件的触发就导致了另一模块中的过程的调用。
        从架构上说,这种风格的构件是一些模块,这些模块既可以是一些过程,又可以是一些事件的集合。过程可以用通用的方式调用,也可以在系统事件中注册一些过程,当发生这些事件时,过程被调用。
        基于事件的隐式调用风格的主要特点是事件的触发者并不知道哪些构件会受到这些事件影响。由于不能假定构件的处理顺序,甚至不知道哪些过程会被调用,因此,许多隐式调用的系统也包含显式调用作为构件交互的补充形式。
        基于事件的隐式调用系统的主要优点有:
        (1)为软件重用提供了强大的支持。当需要将一个构件加入现存系统中时,只需将它注册到系统的事件中。
        (2)为改进系统带来了方便。当用一个构件代替另一个构件时,不会影响到其他构件的接口。
        隐式调用系统的主要缺点有:
        (1)构件放弃了对系统计算的控制。一个构件触发一个事件时,不能确定其他构件是否会响应它,而且,即使它知道事件注册了哪些构件的过程,它也不能保证这些过程被调用的顺序。
        (2)数据交换的问题。有时数据可被一个事件传递,但在另一些情况下,基于事件的系统必须依靠一个共享的仓库进行交互。在这些情况下,全局性能和资源管理便成了问题。
        (3)既然过程的语义必须依赖于被触发事件的上下文约束,关于正确性的推理就存在问题。
 
       图形
        UML2.0使用了14种图,列举如下:
        (1)类图(class diagram):描述一组类、接口、协作和它们之间的关系。在面向对象系统的建模中,最常见的图就是类图。类图给出了系统的静态设计视图,活动类的类图给出了系统的静态进程视图。
        (2)对象图(object diagram):描述一组对象及它们之间的关系。对象图描述了在类图中所建立的事物实例的静态快照。和类图一样,这些图给出了系统的静态设计视图或静态进程视图,但它们是从真实案例或原型案例的角度建立的。
        (3)构件图(component diagram):描述一个封装的类和它的接口、端口,以及由内嵌的构件和连接件构成的内部结构。构件图用于表示系统的静态设计实现视图。对于由小的部件构建大的系统来说,构件图是很重要的。构件图是类图的变体。
        (4)组合结构图(composite structure diagram):描述结构化类(例如构件或类)的内部结构,包括结构化类与系统其余部分的交互点。它显示联合执行包含结构化类的行为的构件配置。组合结构图用于画出结构化类的内部内容。
        (5)用例图(use case diagram):描述一组用例、参与者(一种特殊的类)及它们之间的关系。用例图给出系统的静态用例视图。这些图在对系统的行为进行组织和建模时是非常重要的。
        (6)顺序图(sequence diagram,序列图):是一种交互图(interaction diagram),交互图展现了一种交互,它由一组对象或角色以及它们之间可能发送的消息构成。交互图专注于系统的动态视图。顺序图是强调消息的时间次序的交互图。
        (7)通信图(communication diagram):也是一种交互图,它强调收发消息的对象或角色的结构组织。顺序图和通信图表达了类似的基本概念,但每种图所强调的概念不同,顺序图强调的是时序,通信图则强调消息流经的数据结构。
        (8)定时图(timing diagram,计时图):也是一种交互图,它强调消息跨越不同对象或角色的实际时间,而不仅仅只是关心消息的相对顺序。
        (9)状态图(state diagram):描述一个状态机,它由状态、转移、事件和活动组成。状态图给出了对象的动态视图。它对于接口、类或协作的行为建模尤为重要,而且它强调事件导致的对象行为,这非常有助于对反应式系统建模。
        (10)活动图(activity diagram):将进程或其他计算的结构展示为计算内部一步步的控制流和数据流。活动图专注于系统的动态视图。它对系统的功能建模特别重要,并强调对象间的控制流程。
        (11)部署图(deployment diagram):描述对运行时的处理结点及在其中生存的构件的配置。部署图给出了架构的静态部署视图,通常一个结点包含一个或多个部署图。
        (12)制品图(artifact diagram):描述计算机中一个系统的物理结构。制品包括文件、数据库和类似的物理比特集合。制品图通常与部署图一起使用。制品也给出了它们实现的类和构件。
        (13)包图(package diagram):描述由模型本身分解而成的组织单元,以及它们的依赖关系。
        (14)交互概览图(interaction overview diagram):是活动图和顺序图的混合物。
 
       编辑器
        从理论上来说,任何一个文本编辑器都可以用来编写源代码。但是为了提高编程的效率,一个好的编辑器应该具备如下一些特点:
        (1)支持C语言、汇编语言等程序设计语言的语法高亮显示;
        (2)支持文件管理操作(如打开文件、保存文件、关闭文件等)、文件编辑操作、文件打印、文本查找等功能;
        (3)编辑窗口可以同时作为调试时源代码执行的跟踪窗口;
        (4)通过“编译结果输出窗口”可以直接定位到相应的源代码编辑窗口;
        (5)提供一系列辅助编辑工具;
        (6)编辑器可以同时打开多个窗口进行编辑,可编辑的文件大小理论上无限制;
        (7)编辑器的编辑命令和编辑操作最好与标准的Windows编辑器功能一致,以便熟悉Windows的用户使用。
        在各种集成开发环境中,一般都会提供一个功能强大的编辑器。UltraEdit和Source Insight是两个常用的独立编辑器。
        UltraEdit是一个功能强大的文本编辑器。它可以取代记事本,用来编辑文本文字,也可以用来编写各种语言的源代码。它内建英文单词检查、C++及Visual Basic语法加亮显示,可同时编辑多个文件。即使打开一个很大的文件,速度也不会慢。UltraEdit附有HTML Tag颜色显示、搜寻替换以及无限制的还原功能。它支持二进制和十六进制编辑,可以用来直接修改EXE或DLL文件。
        Source Insight是一款面向工程项目的源码编辑和查看软件,其用户界面友好,变量和函数名都以特定的颜色表示出来,非常直观。对于各种语言的源文件,如C/C++、C#和Java,它能自动解析程序的语法结构,动态地保持符号信息数据库,并主动显示有用的上下文信息。Source Insight不仅是一个功能强大的程序编辑器,它还能显示参考树、类继承图和调用树等信息。它具有快速源代码导航功能,用户可以使用各种搜索命令,在各个源文件的不同函数和变量定义之间来回跳转,非常方便,因此它很适合于编辑大型软件。
 
       调试
        调试的任务就是根据测试时所发现的错误,找出原因和具体的位置,进行改正。调试主要由程序开发人员来进行,谁开发的程序就由谁来进行调试。常用的调试方法有试探法、回溯法、对分查找法、归纳法和演绎法。
 
       功能描述
        与PC端一样,移动端登录是商务活动不可或缺的功能。用户应用社交、电商、金融等App必须进行注册登录,如微信、QQ、支付宝、淘宝、美团等。移动端用户账号登录注册主要有几种形式:第三方账号、手机号、邮箱。
        (1)第三方账号(QQ、微信、微博等)。使用第三方账号优势是用户操作简单,方便用户快速的体验产品;其缺点是通过第三方平台获取到的用户信息太少,手机没有安装对应App时,通过网页进行登录认证需要输入账号密码,复杂度很高。移动端第三方登录模块的基本功能如下图所示。
        
        移动第三方登录模块基本流程图
        (2)手机号注册登录。通过手机获取验证码(短信),验证后设置密码进行注册;登录时使用手机号和密码登录。获取验证码的优点是可以很大程度上防止恶意注册,可以导入通讯录关系而且用户不需要记忆成本;其缺点是短信验证码需要成本,用户隐私可能泄露,手机号丢失后找回复杂。移动端手机号注册登录模块的基本功能如下图所示。
        
        移动手机号注册登录模块基本流程图
        (3)邮箱登录注册。邮箱登录验证成本低,对用户来说隐私性更好,但是移动端邮箱输入复杂,验证不方便,普及率不高普及率高。
 
       图形用户界面
        随着文字、图形、声音、图像等多媒体技术的出现,各种图形用户界面应运而生,用户既可使用传统的字符,也可以使用图形、图像和声音同计算机进行交互,操作更为自然、更加方便,多媒体技术进一步推广、发展与完善。现代界面的关键技术是超文本。超文本的"超"体现在它不仅包括文本,还包括图像、音频、视频等多媒体信息,即将文本的概念扩充到超文本,超文本的最大特点是具有指向性。
 
       用户界面
        用户界面是计算机中实现用户与计算机通信的软件和硬件部分的总称。用户界面也称为用户接口或人机界面。
               控制面板式用户界面
               计算机发展早期,用户通过控制台开关、板键或穿孔纸带向计算机送入命令或数据,而计算机通过指示灯及打印机输出运行情况或结果。这种界面的特点是人去适应计算机,现在看来是十分笨拙的。
               字符用户界面
               字符用户界面是基于字符型的。用户通过键盘或其他输入设备输入字符,由显示器或打印机输出字符。字符用户界面的优点是功能强、灵活性好、屏幕开销少;缺点是操作步骤繁琐,学会操作较费时。
               图形用户界面
               随着文字、图形、声音、图像等多媒体技术的出现,各种图形用户界面应运而生,用户既可使用传统的字符,也可以使用图形、图像和声音同计算机进行交互,操作更为自然、更加方便,多媒体技术进一步推广、发展与完善。现代界面的关键技术是超文本。超文本的"超"体现在它不仅包括文本,还包括图像、音频、视频等多媒体信息,即将文本的概念扩充到超文本,超文本的最大特点是具有指向性。
               新一代用户界面
               多媒体、多通道及智能化是新一代用户界面的技术支持。新的、更加自然的交互技术,将为用户提供更方便的输入技术。计算机将通过多种感知通道来理解用户的意图,实现用户的要求;计算机不仅以二维屏幕向用户输出,而且能以真实感的计算机仿真环境向用户提供真实的体验。
   题号导航      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 /
 
第54题    在手机中做本题