热门文档
- 2022-09-18 20:22:00 中国人为什么看不起中国人 张鸣
- 2022-09-18 20:22:00 中国兵法之起源 编委会
- 2022-09-18 19:48:57 心理催眠术 迈克尔.赫普,温迪.德雷顿著
- 2022-11-24 16:17:09 《性体验与性爱心理》尤里-谢尔巴特赫
- 2022-09-18 19:48:57 成功创业72绝招 艾凡著
- 2022-09-18 20:22:00 中国企业的六西格玛管理之道 魏中龙主编
- 2022-11-27 20:51:00 《英语是玩出来的》何杰 刘丽芳
- 2022-09-19 20:00:37 《社会契约论》卢梭著 何兆武译
- 2022-11-22 08:41:49 【测试文档】小学语文口语交际写作技巧大全
- 2022-12-05 15:23:18 《做你自己股神巴菲特送给儿子的人生礼物》巴菲特著 赵亚男译
- 2022-09-19 10:52:47 《计算机原理与系统结构》侯炳辉主编
- 2022-10-02 14:44:45 《心理咨询导论 第3版》约翰·麦克里奥德 潘洁编著

1、本文档共计 150 页,下载后文档不带www.pdfdz.com水印,支持完整阅读内容。
2、古籍基本都为PDF扫描版,所以文档不支持编辑功能,即不支持文档内文字的复制粘贴。
3、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
4、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
5、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。
2、古籍基本都为PDF扫描版,所以文档不支持编辑功能,即不支持文档内文字的复制粘贴。
3、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
4、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
5、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。
第二版序言自从本书第一版问世以来,计算机程序设计的方法有了改进,程序设计的技巧已成为正式的讨论题目.在编写了多年“编完就了事”的程序之后,教师、学生和专业计算机人员现在认识到了编写易读程序的重要性。结构程序设计作为有价值的程序编制规则已被大多数专业人员所接受。程序设计的重要性过去常被忽略,现在已越来越受到人们的重视。为了反映这些变化,我们对第一版做了较大的改动、为了避免当时流行的的关于“结构程序设计”的经院式思辩,第一版没有采用这一术语。现在这种辩论的高潮已经过去,我们可以比较实际地讨论这种已被实践证明是行之有效的程序设计技术了。第二版就程序结构新加了一章,用以说明怎样利用自顶向下设计法将程序设计得更好。本书讨论了各种程序上的问题,并大量使用伪码作为程序设计的工具。我们还重编了第一版中的许多例子,以便把如何编好程序讲得更清楚一些。还有一些新例子及第一版中的若干例子,在这一版中被当成反面的例子来讲。本版还加了习题.此外,还扩充和推广了技巧规则。我们再次感谢一些作者和出版商,他们慷慨地允许我们从他们的教科书中取得材料。回顾某些我们自己举出的例子,使我们认识到要编好程序是非下狠功夫不可的。我们还要感谢阅读了第二版稿子的朋友们,特别是A1Aho,Jim Blue,Stu Feld-n,Paul Kernighan,Doug McIlroy,Ralph Muha和 Wexelblat,他们给我们提出了宝贵的意见。Brian W,KernighanP,J.Plauger初版序言不可能通过宣讲一般原理来教好程序设计。要学会编好程序,办法是:反复领会实际程序设计是如何通过一些很好实践过的原理和应用通用的知识来不断改进的。对已编得的程序加以评审,才能掌握改写程序的技巧,更好地编制程序。本书评审了大量程序,其中每一个都提供了一种或多种技巧方面好的经验,但也存在着一些缺点。我们要讨论每个例子中的缺点,并把它改写好,然后从中引出一般规律。从讲求实效出发,我们注重的是如何着乎改进当前程序设计的方法,而不是去创建一套如何进行程序设计的复杂理论。因此,本书可作为任何水平的程序设计课程的补充读物,或作为供有经验的程序员用作知识更新的读物。我们例举的所有例子都是用Fortran和PL/1编制的,因为这两种语言不但用得很广而且非常相似,只要理解了其中一一种便能很好地理解另一种,(无论哪一种我们都避免采用难懂的语法结构,当遇到不可避免的习惯用语时,则加了说明)。然而本书中阐述的基本原理,对所有的语言(包括汇编)都适用。我们的目的,是要用少量的篇幅来讲授程序设计技巧的要点,所以,本书着重讲基本的原则。为了便于读者加深对文章的理解,书中讲授了一些规则。每一章都用一段摘要和一组“思考要点”作结尾,其中包括一些练习,使读者能够继续研究本书中没有讲全的一些题目。最后,我们把规则集中列在一起,以便于参考。本书中所有实例均引自一些程序设计教科书,这就是说:我们没有提出自已编造的程序来论证我们的观点,我们引用的都是已经写成的程序,是由有经验的程序员编写并已发表的。这些程序实例,对新程序员来说,通常都是第一次见到的。我们虽然希望这些实例能成为程序设计技巧的样板,但遗憾的是,常常事与愿违。这些教科书中的实例经常会反映出一些问题,而这些问题又恰恰反映出当前计算机程序设计中的弊病。请诸位读者确信:本书中引用的任何一段程序,都不会是由于我们断章取义的撞引,而使其显得编写不佳。我们在此声明:我们不打算评论教科书的作者们(无论单个的或集体的)任何程序中的缺点,仅仅表明我们都是凡人,又急着完成大为费脑力的工作(例如编写程序或写书),当然有些事情会做得不完美。毫无疑问,本书中所提到的一些好的程序,还会被某位未来的作者当作环的程序加以批判。我们仅仅希望该作者和未来的读者们]将能通过仔细研究这些程序而得到经验。如果没有许多人(其中不少人已写了一些优秀的程序设计敦科书)的开创性的工作,我们是不可能写出这本程序设计技巧手册的。例如:D.D.McCracken和G.M.Wein-berg一直在强调程序简单化和明了化的重要性。E.W.Dijkstra和Harlan Millsi在结构程序设计方面的工作帮助我们制定了用来控制指令走向的规则。本书的形式和叙述方式都深受W.Strunk和E.B.Whitel的著作"程序技巧要点”(The Elements of Sty.-