`
jy00509336
  • 浏览: 243558 次
  • 性别: Icon_minigender_1
  • 来自: 山西
社区版块
存档分类
最新评论
阅读更多

转载自:云风的 BLOG

 

《The Elements of Programming Style 》是一本很古老的书。尽管 Fortran 我们不太使用,尽管新奇的语言层出不穷,但这些,30 年的岁月依旧无法掩盖其中的真知灼见。

英文版的 google 一下到处有,云风试着摘译几条。

  • 把代码写清楚,别耍小聪明。
  • 想干什么,讲的简单点、直接点。
  • 只要有可能,使用库函数。
  • 避免使用太多的临时变量。
  • ”效率“不是牺牲清晰性的理由。
  • 让机器去干那些脏活。
  • 重复的表达式应该换成函数调用。
  • 加上括号、避免歧义。
  • 不要使用含糊不清的变量名。
  • 把不必要的分支去掉。
  • 使用语言的好特性,不要使用那些糟糕的特性。
  • 该用逻辑表达式的时候,不要使用过多的条件分支。
  • 如果逻辑表达式不好理解,就试着做下变形。
  • 选择让程序更简洁的数据表达形式。
  • 先用伪代码写,再翻译成你使用的语言。
  • 模块化。使用过程和函数。
  • 只要你能保证程序的可读性,能不用 goto 就别用 。
  • 不要给糟糕的代码打补丁 - 重写就是了。
  • 把大的程序分成一小片一小片来写,分块测试。
  • 使用递归程序来处理递归定义的数据结构。
  • 正确和错误的输入数据都要测试。
  • 确保输入不会超出程序的限制。
  • 依靠文件结束来终止输入,而不是依赖一个记数。
  • 把文件结束作为一个输入状态来处理。
  • 识别出错误的输入;如果有可能就修复它。
  • 让输入数据很容易构造出来,让输出数据不言自明。
  • 使用统一的输入格式。
  • 让输入容易校对。
  • 如有可能,提供更自由的输入格式。
  • 使用输入提示,允许使用默认值。并把它们显示出来。
  • 把输入输出放到子程序里。
  • 确保所有的变量在使用前都有初始化。
  • 不要因为一个 bug 而停止不前。
  • 打开编译程序的调试选项。
  • 常量结构用数据声明初始化,变量结构用执行代码初始化。
  • 小心 off-by-one 错误。
  • 当循环中有多个跳出点时要小心。
  • 如果什么都不做,那么也要优雅的表现出这个意思。
  • 用边界值测试程序。
  • 手工检查一些答案。
  • 防御式编程 - 为不可能的情况写几句代码。
  • 10.0 乘 0.1 很难保证永远是 1.0 。
  • 7/8 等于 0 ,而 7.0/8.0 不等于 0 。
  • 不要直接判断两个浮点数相等。
  • 先做对,再弄快。
  • 先使其可靠,再让其更快。
  • 先把代码弄干净,再让它变快。
  • 别为了获得一丁点“性能”就牺牲掉整洁。
  • 让编译器做些简单的优化。
  • 不要过分追求重用代码;下次用的时候重新组织一下即可。
  • 确保特殊的情况是真的特殊。
  • 保持简洁以获得速度。
  • 不要死磕代码来加快速度 - 找个更好的算法。
  • 用工具分析你的程序。在做“性能”改进前先评测一下。
  • 确保注释和代码一致。
  • 不要在注释里仅仅重复代码 - 让每处注释都有价值。
  • 不要给糟糕的代码做注释 - 应该重写它。
  • 给变量都起个有意义的名字。
  • 把程序重新整理一下,让阅读代码的人更容易理解。
  • 为你的数据布局写一个文档。
  • 不要过分注释。
分享到:
评论

相关推荐

    【轻松月入1W+】用AI数字老人言,用一部手机搞定社交媒体增粉秘籍!

    AI数字老人言概述:解释AI数字老人言的基本概念,及其如何在社交媒体营销中发挥作用。 七个实战案例分析:详细介绍7个成功利用AI数字老人言增粉6万的作品案例,包括策略制定、内容创作和互动提升等。 手机操作指南:...

    做产品经理,还是得多听老人言

    之前对过来人的建议都不怎么在意,自己特别骄傲,觉得别人都不比自己聪明。经过了三年,这种心态开始变化。知乎上有个问题是:『有哪些事情是你入行时不以为然甚至嗤之以鼻,入行后却整个颠覆了之前的认知并奉为至理...

    小学生重阳节演讲稿.doc

    不听老人言,可能真的会让我们在人生的道路上多走弯路。因此,我们要学会孝敬长辈,遵从他们的教诲,这不仅是对他们付出的尊重,也是对自己的成长负责。 在重阳节这个特殊时刻,我们可以采取以下几种方式来表达对...

    浙江省2019年高考语文满分作文坚持自我不弃忠言素材

    俗话说,“不听老人言,吃亏在眼前”,长辈和专家的经验往往能帮助我们识别风险,避免不必要的弯路。在倾听他人的同时,我们也能够发现自己的盲点,有时甚至可能因此获得成功的机会。 不过,我们应当注意,听取他人...

    部编版三年级上册语文《期中》考试题(可打印).pdf

    7. **日积月累**:让学生积累并应用俗语和古诗,如“不听老人言,吃亏在眼前”,以及杜牧的《山行》诗句。同时,引导学生回顾课本,评价人物和故事情节。 8. **阅读理解**:通过桌椅的对话,教育学生爱护公共财物,...

    难忘的教训作文.doc

    4. **自我反思**:事件过后,主人公对自己的行为进行了反思,意识到“不听老人言,吃亏在眼前”,这展示了自我反省的重要性,能够帮助我们从错误中吸取教训,避免重蹈覆辙。 5. **教育意义**:这篇作文作为范文,...

    读《流沙岁月》有感.doc

    首先,故事中的“不听老人言,吃亏在眼前”是一个古老但依然适用的谚语,强调了尊重经验和遵循指导的重要性。老蚌作为长者,其智慧和经验是值得借鉴的。在现实生活中,长辈或导师的经验往往能够帮助我们避开许多弯路...

    一件快乐的事作文.doc

    5. **学习经验的总结**:最后,作者意识到“不听老人言,吃亏在眼前”的道理,这是生活智慧的积累,也是从错误中学习的过程。这种反思和总结的能力对于个人成长至关重要。 6. **时间管理**:故事以下午六点结束,...

    敬老院五保户集中供养服务协议样本.doc

    敬老院的目标是打造老有所养、学、为、医、乐的乐园,实现管理、经济、环境、生活和服务的优质化,提供五心(爱心、诚心、细心、耐心、贴心)、四顺(顺老人言、心、意、味)、四服务(微笑、敬语、贴心、勤快服务)...

    老祖宗12句至理名言.docx

    3. 不听老人言,吃亏在眼前:此句话强调了经验和智慧的价值。在IT界,资深开发者或行业专家的经验往往能避免新手重复犯错。年轻人应尊重并学习前辈的经验,以便更快地成长和适应行业变化。 4. 物以类聚,人以群分:...

    【小学生作文】小学生难忘的教训300字作文【七篇】.doc

    第五篇作文则以不听老人言为主题,讲述了暑假期间因为不遵守安全规则而差点发生危险的故事,强调了长辈的经验和建议的价值。 综合这七篇作文,我们可以提炼出以下几个关键知识点: 1. **尊重生命**:无论是对待...

    小升初作文(15篇)_1.docx

    - **成语运用**:“不听老人言,吃亏在眼前”,意指不听从长辈的劝告往往会带来麻烦或不利的结果。 ### 小升初作文2:《探索未知》 **知识点总结:** - **物理现象**:介绍了静电的产生原理及其常见表现形式。 - *...

    [比喻不要脸皮的三字俗语] 比喻不明事理的人俗语.docx

    4. **不听老人言,吃亏在眼前**:强调经验的重要性。 5. **和尚不知道士**:比喻各有所长,不应该互相轻视。 6. **照方子抓药**:比喻按部就班,严格按照指示行事。 7. **打如意算盘**:形容只考虑好的一面,不考虑...

    魔法老人javascript特效

    根据给定的信息,本文将对“魔法老人javascript特效”这一主题进行深入解析,重点解读其JavaScript代码中的关键知识点...对于开发者而言,了解这些技术可以帮助更好地理解Web技术的历史背景,并为未来的项目提供灵感。

    孝敬老人手抄报图片.doc

    与孝敬老人相关的格言同样深植人心,孟郊的“谁言寸草心,报得三春晖”道出了孝心的无尽与深情。孔子的“父母之所爱亦爱之,父母之所敬亦敬之”倡导将孝敬父母的心扩大到关爱他人。孟子则提出孝顺父母是人的根本,是...

    面向空巢老人的娱乐机器人交互设计.pdf

    总结而言,面向空巢老人的娱乐机器人交互设计需结合老年人的生理、心理特点,提供人性化、易操作的交互体验,同时通过创新功能如“亲子辅导”和“回忆拼图”满足他们的社交和情感需求。这为未来设计更加贴合老年人...

    2021关爱空巢老人心得体会_关爱空巢老人感悟.docx

    正如“问渠哪得清如许,为有源头活水来”所言,只有打开心灵之窗,主动与老人交流,才能理解他们的需求和困扰,给予他们精神上的慰藉。同时,志愿者们应保持谦虚学习的态度,借鉴他人经验,结合自身特色,为老人提供...

    《老人与海》读书笔记一.pdf

    圣地亚哥的形象,不仅是硬汉精神的代表,也是人类在逆境中不断斗争、永不言败的象征。这部小说鼓励我们在生活中,即使在最艰难的时刻,也要像老渔夫一样,保持坚定的信念,展现出“打不败”的精神,勇敢地迎接每一个...

    c++期末大作业 老人健康管理系统(老是学生,图书馆是不是太单调了)

    《C++实现的老人健康管理系统详解》 在信息技术飞速发展的今天,利用计算机技术来管理老年人...对于初学者而言,完成这样一个项目不仅能巩固课堂所学,还能锻炼解决问题和团队协作的能力,无疑是一次宝贵的实践机会。

    关爱孤寡老人调查报告.doc

    总体而言,该调查报告不仅是对孤寡老人当前生活状况的深入分析,更是一次对如何有效关心和帮助这一社会群体的积极探索。报告向全社会发出呼吁:应当更多地关注孤寡老人的需求,通过建立长效关怀机制,调动社区与社会...

Global site tag (gtag.js) - Google Analytics