学用工具的3个层次——谈概念模型在学用工具中的作用

发表于:2008-04-18来源:作者:点击数: 标签:工具模型概念
当前,软件已用于各行各业,成为人们生产和管理的重要工具。由于应用领域内在的复杂性,或者 开发 时考虑不周等原因,不少工具的使用相当复杂。对工具的开发者来说,自然应当不断地提高软件的可用性(Usability)。本文从工具使用者的角度,对学用工具的科学
当前,软件已用于各行各业,成为人们生产和管理的重要工具。由于应用领域内在的复杂性,或者开发时考虑不周等原因,不少工具的使用相当复杂。对工具的开发者来说,自然应当不断地提高软件的可用性(Usability)。本文从工具使用者的角度,对学用工具的科学方法做一点探讨。
 
一、学用工具的3个层次
 
我们说,用户通过工具提供的界面来操作工具,工具完成用户指示的各种功能。所以对工具的掌握至少可以分为“仅会操作”和“了解功能”这2个层次。
 
“仅会操作” 者对工具的认识是“它是一系列操作步骤”。他们对工具的掌握完全处在一种“识记”阶段,对一项以前不会的功能他们无从下手。
 
“了解功能” 者对工具的认识是“它是一些功能”。他们突破了对操作的恐惧,他们知道完成一项功能可能有多种操作方法,也可能有多种操作顺序。
 
然而,“了解功能”并不是掌握工具的最高阶段,他们往往对工具的高级功能感到困难。比如很多人在用Visio画图,但会制作Visio模板的人比较少。所以我们提出掌握工具的第3 个层次:“把握概念模型”。
 
二、概念模型在学用工具中的作用
 
任何工具的“最前面”都是用户界面;用户界面的背后,是工具的功能;而功能背后,正是工具的概念模型,它是统帅工具所有功能的一套相互关联的抽象概念,如下图所示(采用UML类图语法):


“仅会操作”者停留在对“用户界面”的掌握,“了解功能”者掌握了一些“功能”,而“把握概念模型” 者达到了“理解工具”的程度,自然可以融会贯通。
从逆向工程观点来看,概念模型其实就是软件最基本的设计。C++大师Andrew Keonig在他的《c++ 沉思录》中说:“自从25年前开始编程以来,我一直痴迷于那些扩展程序员能力的工具。……。抽象如此有用,因此程序员们不断发明新的抽象,并且运用到他们的程序中。结果几乎所有重要的程序都给用户提供一套抽象。” 本文所谈的“概念模型”,就是这里所说的“抽象”。
 
 
三、小试牛刀——剖析Word的概念模型
 
下面通过剖析Word的概念模型来说明掌握概念模型对学用工具的作用。
 
下图是笔者总结的Word的概念模型,采用UML类图语法:


从图中可以看出,模板(Template)处于概念模型的核心位置。其实的确如此,你建立的文档总是基于一个模板的:

vb4.jpg" border=0>

即使是点击快捷按钮创建的文档和每次打开Word时自动创建的文档也不例外,它们通常是基于Blank Document模板:



图中还显示,一个模板会预先定义3方面的东西:界面元素(app UI element)、文档元素(doc element)和风格设置(style)。在用户使用Word期间,这3者的关系是:用户可以通过界面元素来更改风格设置(如改变字体)和生成文档元素(如插入图片),而风格设置的更改将作用于当前选中的文档元素和以后添加的文档元素。
Word支持的文档元素有:文本、文本框、图片、对象、表格、索引、目录、页眉和页脚等。
 
Word的界面元素是大家熟悉的,比如菜单、按钮和标尺等。举个例子说明一下上面说的“用户可以通过界面元素来生成文档元素”:你可以通过“Insert”菜单来向文档中添加分割符、页码、日期和时间、符号、表格、索引、图片、文本框和对象等,如下图所示:


最值得谈一谈的还是风格设置。Style可以分为Paragraph Style和Character Style这2种,前者是下列7种设置的集合:Font、Paragraph、Tab、Border、Language、Frame和Numbering,而后者仅包括Font、Border和Language这3种设置。这一点从New Style对话框看得非常明白:



而Format菜单的其它菜单项,大多数都是单独改变“7种设置”的某1项;至于Background等其它一些设置,虽然并不属于“7种设置”之列,但笔者为了使模型保持简洁,并未将其画入模型。
通过上面的剖析,是不是觉得对Word的工作原理异常清晰。其实所有的Word操作,都跳不出Word概念模型的框框。最后再举比较典型的3例子:
·        标尺看上去蛮复杂的,从归属上它属于模型中的UI元素,从功能上它用于设置模型中提到的Paragraph。
·        格式刷子(Format Painter)是Word一个很精彩的特性,上面模型中提到了“Paragraph Style是Font、Paragraph、Tab、Border、Language、Frame和Numbering这7种设置的集合”,而格式刷子能一下子拷贝这7种设置,再轻松“刷”到别的段落(Paragraph)。当然格式刷子也支持Character Style。
·        Word模板涉及到概念模型中的所有元素。生成自己的模板的3种方法:通过File->New菜单,以模板库中的模板为基础创建新模板;通过File->Save As菜单,将编辑好的Word文档另存为后缀为dot的模板文件;通过File->Open菜单,打开dot文件直接编辑模板文件。

 

【作者介绍】 wakeful

温昱,架构设计师,资深咨询顾问,松耦合空间(htp://lcspace.nease.net)创办人。擅长面向对象、架构和框架设计,对设计模式、UML和软件工程有深入研究。
作者Email地址:xinxiu123@sina.com

原文转自:http://www.ltesting.net