用组件开发一致的界面

用组件开发一致的界面

ID:23736059

大小:258.50 KB

页数:30页

时间:2018-11-10

用组件开发一致的界面_第1页
用组件开发一致的界面_第2页
用组件开发一致的界面_第3页
用组件开发一致的界面_第4页
用组件开发一致的界面_第5页
资源描述:

《用组件开发一致的界面》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、第11章用组件开发一致的界面293第11章用组件开发一致的界面什么能算是好的界面,标准是非常主观的。许多商业应用程序都跟随着WinTel标准:灰色的按钮和控件,白色的背景。对商务程序来说,这可能是个不错的主意,因为通过多年的熟悉使得这个界面在某种程度上较为舒服,但这是个好的界面吗?AlanCooper是VisualBasic之父,他建议“通过坚持使他们(Microsoft和Apple)各自独立的开发者群体遵守既定的方针,他们偷偷摸摸地阻止了来自应用者群体的革新。”[Cooper,212]Cooper认为,“我并不鼓

2、吹忽略界面风格方面的指导,从而导致界面出现混乱。我仅仅认为应该像参议员看待说客那样来看待对界面风格的指导,而绝不能像司机服从于交警那样。立法者知道说客想要削减某项经费,但说客并非来自于持有客观态度的第三方。”[Cooper,212]在所有的条件下都是最好的界面可能并不存在,即使在一定的条件下,界面的设计仍然是高度主观的。如果你能开发出像图11.1所示的新RealPlayer那样的界面,而且符合你的目的,那就很好了。如果你不擅长创建独一无二或非常有趣的图形用户界面,而且并没有雇佣图形设计者的预算,那么可能会开发出与W

3、inTel风格类似的应用程序。对于商业目的而言,也许较为熟悉的风格可以避免使用方面的障碍。图11.1RealPlayer8使用了一些漂亮的图形按钮,并进行了视觉人类工程学方面的尝试。还可以选用卡通标志和斑马条纹等外表只有一个问题不是主观的,它也是本章的主题,那就是界面应该是一致、连贯、完全的。不一致、不连贯、不完全,不考虑界面的风格对用户来说是不可容忍的。第11章示范了一些技术,可用于简化开发并确保一致性,包括如何使用定制组件、组件模板和窗体继承,以提供一致、连贯而完全的应用程序。第11章用组件开发一致的界面293

4、11.1定制组件创建定制组件很有趣,而且定制组件也很有用。首先,显而易见的理由是可以重用已有的对象,并封装新的或增强的特性;其次,它可以提供一致的效用。无须绘制组件时保证相同的尺寸、风格、字体、颜色或措辞,可以对组件进行定制以确保这些目标。11.1.1定制组件的三个C定制组件的三个C是一致性、连贯性和完备性。一致性意味着组件在你的应用程序和其他地方的行为是一致的。一致性(Consistency)组件每次都表现出相同的行为和初始状态,才能提供一致性。对组件的行为或状态进行一次编程,则所有的组件实例都具有一致的外观和行

5、为。一致性并不追求数量,注意到这一点是很重要的。定制组件无须进行大量的修改,即可提供一致性。即使组件只是重载了缺省的大小或形状,创建一个定制组件也可确保一致性。有两个直接的方法可以做到这一点。您可以子类化所有的需要微小修改的组件然后再安装;或者快速地创建组件模板,这更容易一些(参考11.2节“创建组件模板”)。连贯性(Coherency)一致性是连贯的一个方面。如果对象不具有一致性,也会缺少连贯性。连贯性是对控制流和操作的逻辑性的度量,它要求语义上相似的操作具有一致的行为。定制控件和组件模板可用于提供更为连贯的行为

6、流程。没有一致性和连贯性,应用程序不可能是完全的。完备性(Completeness)不一致、不完全的应用程序看起来是不合逻辑且不正确的,这样必定是不完备的。如果应用程序不被用户群体所接受,也不能说是完备的。完备性度量了应用程序是否执行了所要求的任务、结果是否正确、应用程序是否具有合理的容错级别。如果程序给出正确却不合时宜的回答,也是不完备的。而迅速的提供错误的结果,仍然是错误的。如果程序的行为毫无规律、不一致、或不合逻辑,那么该程序是失败的。即使程序有相应的用户群体,仍然可能失败,因为用户群体可以拒绝使用该程序,或

7、恶意共谋使用该程序提供错误的或不合适宜的结果。为什么组件帮助你走向胜利组件是对象。每个对象都属于某个类。这意味着有一组代码需要测试、调试和扩展。如果一个类已经是完美的,那么每个实例都不会出错。这样如果类满足了3C标准,那么类的每个实例都会满足该标准。第11章用组件开发一致的界面293注意:“大而复杂的软件系统需要设计师,以便开发者能够朝着共同的目标前进。”[Jacobsen,Booch,andRumbaugh62]。设计师是这样的人,他形成解决方案的概念并向程序员说清设计意图。即便开始时的进度比通常慢,也要把事情做

8、正确,这将会节省大量金钱和思考的时间,防止在最后才发现出轨。没有经验、缺乏技术的管理者可能认为编写组件接近于消磨时间,但这是面向对象的程序设计。以非面向对象的方法去使用面向对象工具是一个错误。使用Delphi编写结构化程序可以很快地到达beta版,这在短期内常常会使管理者高兴,但可能使得处于beta版的时间较长。您的程序可能永远都脱离不了beta版。迅速得到

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。