`

(转)优秀代码的品质

 
阅读更多
1.简练
这意味着能用五行代码解决的问题,绝不用十行代码;这也意味着,必须花费更多的精力来保证代码的简练,而不是产生令人费解的代码;这还意味着,你所厌恶的事情,是连篇累牍的开放性代码和函数。简练——即结构好、可执行、设计优秀——可以让你的代码更易于理解,也减少了错误的发生。
2.可读性强
正如其字,这说明你的代码应该让其他人看懂。要做到可读性强,就得写注释,符合大众习惯,不要自作聪明地命名变量,比如用a、b、c等。
3.模块化
这意味着你得像宇宙的构成一样来开发程序。世界是由分子构成的,而这些分子又是由原子、电子、核子、夸克和连线(如果你相信的话)组成。类似地,优秀的程序也是由小模块建成大的系统,而这些小模块又由更小的部分来组成。你完全可以只使用移动、插入和删除这三个简单的应用,来编写一个文本编辑器。这就像原子的构成方式一样,软件的组件也具有复用性。
4.层次性
程序得像蛋糕内部一样层次分明。应用运行在框架之上,框架运行在系统之上,而系统又运行在硬件之上。就算是应用程序的内部,也应该有层次。高级层次访问低级层,而且事件正好相反(向下访问,向上返回),低级层不应该知道高级层在干什么。事件/反馈的基本特性就是向上发出无指向性通知。如果你的文档直接访问了框架,那就危险了。模块和层次由API来定义,这样就限定了各自的运行范围。因此,设计就变得尤为重要了。
5.设计良好
在开发程序之前,要先花些时间来设计你的程序,因为思考的代价要小于调试。优秀的开发准则就是,花一半时间来设计。你得写一份功能说明(这个程序用来干嘛的)和一个深层蓝图,而API的功能也应该整理成文。
6.高效
程序不仅要运行快,而且要节省资源,它不能牵扯到文档、数据连接等。程序只做它该做的事情,不能胡乱地装载和撤销线程。在运行层上,你可以在测试之后才开始优化程序;但是在高级层,你必须先计划执行过程。
7.优雅
优雅和漂亮是一个概念,它难以描述却显而易见。优雅综合了简练、高效和简明等概念,同事还能让人感受到高贵的气质。举个例子,优雅就是使用表格,或者是用递归来编写程序。
8.清晰
清晰是优秀代码的基本,也是其他要素的品质保证。相对于普通机械,计算机建立更为复杂的系统的能力要强得多。对于编程来说,最基本的挑战就是减少复杂度。简单、可读性强、模块化、层次、设计良好、高效、优雅,都是久经考验达成简练代码的方法,这些可以有效减少代码的复杂度。
分享到:
评论

相关推荐

    代码阅读方法与实践.2004.中文版(38.4M清晰版)

    “他山之石、可以攻玉”,通过仔细阅读并学习本书,可以快速地提高读者代码阅读的技能与技巧,进而从现有的优秀代码、算法、构架、设计中汲取营养,提高自身的开发与设计能力。 本书适用于对程序设计的基本知识有...

    很好的冒险岛代码搜索工具

    这句话进一步强调了这个工具的优秀品质。它不仅是一个有效的代码搜索工具,而且在用户群体中获得了良好的口碑。它可能包含了快速搜索、过滤、解析代码等功能,帮助用户在庞大的游戏数据中找到特定的代码段,无论是...

    fauxpas检测IOS代码的工具

    FauxPas作为一款优秀的代码质量检测工具,不仅能提升开发效率,还能帮助开发者养成良好的编码习惯。无论是初学者还是经验丰富的开发者,都应该将其纳入日常开发流程,以确保代码的质量和可靠性。因此,"FauxPas检测...

    很不错的开源CMS(源代码)

    在描述中,重复的"很不错的开源CMS(源代码)"进一步强调了这个CMS的优秀品质。这可能意味着它具有良好的用户界面,易于上手,同时在性能、安全性以及可维护性方面表现出色。 标签"开源CMS"和"CMS"则明确了讨论的...

    代码阅读方法与实践(Part1)

    "他山之石、可以攻玉",通过 仔细阅读并学习本书,可以快速地提高读者代码阅读的技能与技巧,进而从现有的优秀代码、算法、构架、设计中汲取营养,提高自身的开发与设计能力。 本书适用于对程序设计的基本知识有一定...

    代码阅读方法与实践(part2)

    "他山之石、可以攻玉",通过 仔细阅读并学习本书,可以快速地提高读者代码阅读的技能与技巧,进而从现有的优秀代码、算法、构架、设计中汲取营养,提高自身的开发与设计能力。 本书适用于对程序设计的基本知识有一定...

    绿茶Flash代码·酒店网站Flash片头源代码.rar

    总的来说,这个压缩包提供的“绿茶Flash代码·酒店网站Flash片头源代码”是为酒店网站设计的互动动画资源,可以帮助开发者或设计师快速创建独特的网站开场动画,提升网站的整体品质。然而,考虑到当前的技术趋势,...

    平面动作设计源代码设计稿分类

    ### 平面动作设计源代码设计稿分类 #### 核心知识点解析 ##### 1. 平面设计源代码的概念及重要性 平面设计源代码指的是用于创建平面设计项目的原始文件或数字文档,这些文件包含了设计的所有元素和属性,如图层、...

    如何阅读程序代码

    正如温伯格大师在其著作《程序开发心理学》中所阐述的,优秀的程序员往往通过大量阅读代码来提升自我。本文将深入探讨如何有效地阅读程序代码,从收集材料、知识准备到分层次阅读、写注解等步骤,旨在为初学者提供一...

    在线客服源代码

    6. **API集成**:优秀的在线客服源代码通常会提供API接口,允许开发者将其与其他业务系统(如CRM、ERP)集成,实现数据同步和自动化工作流程。 7. **安全性与隐私**:由于涉及到用户信息的交换,源代码需要遵循严格...

    可视化U站优站导航代码免费分享

    总之,可视化U站优站导航代码的免费分享为开发者和设计师提供了宝贵的资源,通过学习和应用这些代码,可以创建出更符合用户需求的网站导航,提升网站的整体品质和用户体验。不过,记得持续学习和改进,以适应不断...

    一个很不错的论坛源代码

    描述中的重复性强调了这个论坛源代码的优秀品质。这可能意味着它具有良好的性能、用户友好性、丰富的功能或易于定制。好的论坛源代码通常具备以下特点:稳定运行、高效负载处理、支持多种用户交互功能(如发帖、回复...

    走进品质管理.pptx

    品质管理不仅包括检查,更重要的是设计和预防,因为优秀的品质是在产品或服务的设计和制造过程中就已经决定的。 第二章阐述了品质的内涵。当消费者选择产品时,他们会考虑多方面因素,如性能、外观、价格、服务、...

    Code Complete 代码大全 第二版

    McConnell撰写,内容覆盖了软件开发的方方面面,从编程实践到项目管理,旨在弥合最优秀的软件工程实践与普通商业实践之间的鸿沟。书籍的开篇便深刻地揭示了软件工程领域中存在的问题,即最佳实践和普遍实践之间的...

    非常优秀的 网站设计模版

    网站设计模版是一种预先设计好的网页布局,它们通常包含了各种页面元素、颜色方案、字体样式以及交互...通过合理利用这些资源,不仅可以节约时间和成本,还能确保网站的专业品质,从而吸引更多的访问者并提升用户体验。

    优秀学生干部德智体几方面主要表现精选.doc

    文档中的内容虽然主要聚焦于优秀学生干部的个人事迹和品质,但我们可以从中提炼出一些与IT行业相关的知识点,特别是对于那些需要领导力和技术素养并存的IT团队管理者来说,这些品质同样重要。 1. **自我管理和学习...

    优秀员工的十条戒律

    总而言之,作为一名优秀的程序员,不仅要具备扎实的技术基础,还应该拥有良好的职业道德和个人品质。以上十条戒律涵盖了从个人成长到团队合作等多个方面,对于提升自身的综合能力有着重要的指导意义。

    47个优秀后台模板.

    在IT行业中,后台模板是构建高效管理...这些模板不仅可以帮助你快速构建后台系统,还可以作为设计灵感的来源,提升你的项目品质。记得仔细阅读说明文档,结合实际需求,选择最佳的模板,以实现高效且美观的后台界面。

    优秀的测试人员必备的素质

    - 其他品质:此外,良好的沟通能力、团队协作精神、问题解决能力和持续学习的意愿也是优秀测试人员应具备的素质。 总结来说,优秀的测试人员不仅要有深厚的计算机专业技能,还要具备行业知识和优秀的个人素养。这...

Global site tag (gtag.js) - Google Analytics