- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第四章软件编码界面设计.ppt
2.程序编写首先应当考虑清晰性 程序编写首先应当考虑清晰性,不要刻意追求技巧性,使程序编写得过于紧凑。 例如,有一个用 C 语句写出的程序段: A[I] = A[I]+A[T]; A[T] = A[I]-A[T]; A[I] = A[I]-A[T]; 此段程序可能不易看懂,有时还需用实际数据试验一下。 实际上,这段程序的功能就是交换A[I]和A[T]中的内容。目的是为了节省一个工作单元。如果改一下: WORK = A[T]; A[T] = A[I]; A[I] = WORK;就能让读者一目了然了。 3.程序要能直截了当地说明程序员的用意。 程序编写得要简单,写清楚,直截了当地说明程序员的用意。例如, for ( i = 1; i = n; i++ ) for ( j = 1; j = n; j++ ) V[i][j] = ( i/j ) * ( j/i )除法运算(/)在除数和被除数都是整型量时,其结果只取整数部分,而得到整型量。 4. 除非对效率有特殊的要求, 程序编写要做到清晰第一,效率第二。不要为了追求效率而丧失了清晰性。事实上,程序效率的提高主要应通过选择高效的算法来实现。 5.首先要保证程序正确, 然后才要求提高速度。反过来说,在使程序高速运行时,首先要保证它是正确的。 5.避免使用临时变量而使可读性下降。例如,有的程序员为了追求效率,往往喜欢把表达式 A[I]+1/A[I]; 写成 AI=A[I]; X=AI+1/AI; 这样将一句分成两句写,会产生意想不到的问题。 7. 让编译程序做简单的优化。 8. 尽可能使用库函数 9. 避免不必要的转移。同时如果能保持程序可读性,则不必用 GO TO语句。 例如,有一个求三个数中最小值的程序: 10.避免采用过于复杂的条件测试。 11.尽量减少使用“否定”条件的条件语句。例如,如果在程序中出现 if ( !( char<‘0’ || char >‘9’ ) ) ……改成 if ( char = 0’ char = 9’ ) ……不要让读者绕弯子想。 12. 尽可能用通俗易懂的伪码来描述程序的流程,然后再翻译成必须使用的语言。 13. 数据结构要有利于程序的简化。 14. 要模块化,使模块功能尽可能单一化,模块间的耦合能够清晰可见。 15. 利用信息隐蔽,确保每一个模块的独立性。 16. 从数据出发去构造程序。 17. 不要修补不好的程序,要重新编写。也不要一味地追求代码的复用,要重新组织。 18. 对太大的程序,要分块编写、测试,然后再集成。 19. 对递归定义的数据结构尽量使用递归过程。 输入和输出 输入和输出信息是与用户的使用直接相关的。输入和输出的方式和格式应当尽可能方便用户的使用。一定要避免因设计不当给用户带来的麻烦。 因此,在软件需求分析阶段和设计阶段,就应基本确定输入和输出的风格。系统能否被用户接受,有时就取决于输入和输出的风格。 不论是批处理的输入/输出方式,还是交互式的输入/输出方式,在设计和编码时都应考虑下列原则: 1. 对所有的输入数据都要进行检验,识别错误的输入,以保证每个数据的有效性;2. 检查输入项的各种重要组合的合理性,必要时报告输入状态信息;3. 使得输入的步骤和操作尽可能简单,并保持简单的输入格式; 4. 输入数据时,应允许使用自由格式输入; 5. 应允许缺省值; 6. 输入一批数据时,最好使用输入结束标志,而不要由用户指定输入数据数目; 7. 在交互式输入输入时,要在屏幕上使用提示符明确提示交互输入的请求,指明可使用选择项的种类和取值范围。同时,在数据输入的过程中和输入结束时,也要在屏幕上给出状态信息; 8. 当程序设计语言对输入/输出格式有严格要求时,应保持输入格式与输入语句的要求的一致性;9. 给所有的输出加注解,并设计输出报表格式。输入/输出风格还受到许多其它因素的影响。如输入/输出设备(例如终端的类型,图形设备,数字化转换设备等)、用户的熟练程度、以及通信环境等。 程序效率 讨论效率的准则程序的效率是指程序的执行速度及程序所需占用的内存的存储空间。程序编码是最后提高运行速度和节省存储的机会,因此在此阶段不能不考虑程序的效率。让我们首先明确讨论程序效率的几条准则 效率是一个性能要求,应当在需求分析阶段给出。软件效率以需求为准,不应以人力所及为准。 好的设计可以提高效率。 程序的效率与程序的简单性相关。 一般说来,
文档评论(0)