`

(转)优秀代码的品质

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

相关推荐

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

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

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

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

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

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

    世界之窗浏览器(TheWorld) v3.6.1.0

    世界之窗浏览器是一款小巧、快速、安全、功能强大的多窗口浏览器...世界之窗2.0版本在积累了1.x系列版本的长期开发经验基础上,所有程序架构代码全部重写、所有浏览增强功能代码全部重写以追求更完美更优秀的软件品质。

    世界之窗浏览器(TheWorld) v5.0 Beta

    世界之窗浏览器是一款小巧、快速、安全、功能强大的多窗口浏览器...世界之窗2.0版本在积累了1.x系列版本的长期开发经验基础上,所有程序架构代码全部重写、所有浏览增强功能代码全部重写以追求更完美更优秀的软件品质。

    OpenERP7.0开发教程

    优秀是说,软件功能丰富,品质优秀。OpenERP源自欧洲,技术先进,质量稳定。OpenERP是欧洲中小型企业最受欢迎的ERP软件,拥有最多的用户数量。OpenERP的开发历史超过 10年,拥有 1700多个功能模块,涵盖企业管理...

    openerp 免费下载

    优秀是说,软件功能丰富,品质优秀。OpenERP源自欧洲,技术先进,质量稳定。OpenERP是欧洲市场占有率最 高的ERP软件,拥有大量的用户,证明了软件优秀的可用性和可靠性。OpenERP的开发历史超过10年,拥有1700多个...

    JavaScript语言精粹(修订版)(azw3,epub版)

    azw3格式是kindle正版破解的,epub格式是无损转换,这保证了他在阅读软件上的良好排版。 JavaScript 曾是“世界上最被误解的语言”,因为它担负太...最后还介绍了JSLint,通过它的检验,能有效地保障我们的代码品质。

    Docker搭建代码检测平台SonarQube并检测maven项目的流程

    良好的代码习惯是一个优秀程序员应该具备的品质,但靠人的习惯与记忆来保证代码质量,始终不是一件靠谱的事。在计算机行业应该深知,只要是人为的,都会有操作风险。本文讲解如何通过Docker搭建代码检测平台...

    ABP(2.02)框架相关Demo代码以及报错处理和中文说明手册

    “DRY——避免重复代码”是一个优秀的开发者在开发软件时所具备的最重要的思想之一。我们在开发企业WEB应用程序时都有一些类似的需求,例如:都需要登录页面、用户/角色管理、权限验证、数据有效性验证、多语言/本地...

    C# 4.0完全参考手册(C# 4.0:The Complete Reference) PDF扫描版

    最重要的是,优秀的编程语言注定会有这样一种无形的品质:让程序员在使用时感觉良好。C#就是这样一种编程语言。 目录: 第Ⅰ部分 C#语言 第1章 C#的起源 第2章 C#概述 第3章 数据类型、字面量和变量 第4章 ...

    JavaScript语言精粹

    javascript曾是“世界上最被误解的语言”,因为它担负太多的特性,包括糟糕的交互和失败的设计,但随着ajax的到来,javascript“从最受误解的编程...最后还介绍了jslint,通过它的检验,能有效地保障我们的代码品质。

    世界之窗浏览器 正式版 2.3.0.7

    世界之窗浏览器是一款小巧、快速、安全、功能强大的多窗口浏览器...世界之窗2.0版本在积累了1.x系列版本的长期开发经验基础上,所有程序架构代码全部重写、所有浏览增强功能代码全部重写以追求更完美更优秀的软件品质。

    JavaScript语言精粹(中+英文高清版)

    JavaScript语言精粹(中+英文版) JavaScript曾是“世界上最被误解的语言”,因为它担负太多的特性,包括糟糕的交互和失败的设计,但随着Ajax的到来,...最后还介绍了JSLint,通过它的检验,能有效地保障我们的代码品质。

    SentCMS网站管理系统 3.0.zip

    SentCMS网站管理系统是南昌腾速科技有限公司倾力打造的一款简单易用的网站管理系统,继承了thinkphp5.0的优秀品质,秉承“大道至简”的设计理念。SnetCMS为网站建设而生,为网站建设减少90%的代码编写,只需前端设计...

    JavaScript语言精粹 (英文版)

    这是一本介绍javascript语言本质的权威书籍,值得任何正在或准备从事javascript开发的人阅读,并且需要反复阅读。学习、理解,实践大师的思想,...最后还介绍了jslint,通过它的检验,能有效地保障我们的代码品质。.

Global site tag (gtag.js) - Google Analytics