列表

详情


The purpose of a programming system is to make a computer easy to use. To do this, it furnishes languages and various facilities that are in fact programs invoked and controlled by language features. But these facilities are bought at a price: the external description of a programming system is ten to twenty times as large as the external description of the computer system itself. The user finds it far easier to specify any particular function, but there are far more to choose from, and far more options and formats to remember.
Ease of use is enhanced only if the time gained in functional specification exceeds the time lost in learning, remembering, and searching manuals. With modern programming systems this gain does exceed the cost, but in recent years the ratio of fain to cost seems to have fallen as more and more complex(  )have been added.
Because ease of use is the purpose, this radio of function to conceptual complexity is the ultimate test of system design. Neither function alone nor simplicity alone(  )a good design.
This point is widely misunderstood. Function, and not simplicity, has always been the measure of excellence for its designers. As soon as ease of use is held up as the criterion, each of these is seen to be(  ), reaching for only half of the true goal.
For a given level of function, however, that system is best in which one can specify things with the most simplicity and straightforwardness. (  )is not enough. Mooer’s TRAC language and Algol 68 achieve simplicity as measured by the number of distinct elementary concepts.
They are not, however, straightforward. The expression of the things one wants to do often requires involuted (复杂的)and unexpected combinations of the basic facilities. It is not enough to learn the elements and rules of combination; one must also learn the idiomatic usage, a whole lore of how the elements are combined in practice. Simplicity and straightforwardness proceed from conceptual(  ). Every part must reflect the same philosophies and the same balancing of desiderata. Every part must use the same techniques in syntax and the analogous notions in semantics. Ease of use, then, dictates unity of design, conceptual integrity. 

第 1 问

A. systems

B. functions

C. programs

D. manuals

第 2 问

A. defines

B. can be

C. constructs

D. costs

第 3 问

A. stabilize

B. equalized

C. unbalanced

D. balanced

第 4 问

A. Function

B. System

C. Straightforwardness

D. Simplicity

第 5 问

A. integrity

B. isolation

C. durability

D. consistency

参考答案: B A C D A

详细解析:

编程系统(软件)的目的是使计算机更加容易使用。为了做到这一点,计算机装备了语言和各种工具,这些工具实际上也是被调用的程序,受到编程语言的控制。使用这些工具是有代价的:软件外部描述的规模大小是计算机系统本身说明的10~20倍。用户会发现寻找一个特定功能是很容易的,但却有太多的选择,要记住太多的选项和格式。
只有当这些功能说明节约下来的时间,比用在学习、记忆和搜索手册上的时间要少时,易用性才会得到提高。现代编程系统节省的时间确超过了花费的时间,但是近年来,随着越来越多的功能添加,收益和成本的比率正逐渐减少。
由于目标是易用性,功能与理解上复杂程度的比值才是系统设计的最终测试标准。单身功能本身或者易于使用都无法成为一个好的设计评判标准。
然而这一点被广泛地误解了。功能,而非简洁,总是被用来衡量设计人员工作的出色程度。但是,一旦以易用性作为衡量标准,单独的功能和易于使用都是不均衡的,都只达到了真正目标的一半。
对于给定级别的功能,能用最简洁和直接的方式来指明事情的系统是最好的。只有简洁是不够的,Mooers的TRAC语言和Algol68用很多独特的基本概念达到了所需的简洁特性,但它们并不直白。要表达一件完成的事情,常常需要对基本元素进行意料不到的复杂组合。而且,仅仅了解基本要素和组合规则还不够,还需要学习晦涩的用法,以及在实际工作中如何进行组合。简洁和直白来自概念的完整性。每个部分必须反映相同的原理、原则和一致的折衷机制。在语法上,每个部分应使用相同的技巧;在语义上,应具有同样的相似性。因此,易用性实际上需要设计的一致性和概念上的完整性

上一题