写好代码的五个要素

写好代码的五个要素

    部分翻译自:http://www.aclevercookie.com/the-5-elements-of-being-a-vicious-code-ninja/


读完有感

    都说中国的程序员浮躁,我们为什么浮躁?如果我们不只是整天看着一大堆的新技术眼花缭乱浅尝辄止,而是能静下心来,仔细审视一下我们的代码,哪怕仅仅是让 那些代码整齐一点,稍微好看一点,看起来顺眼一点,方法名好理解一点,最好让别人看了也舒服、也能看懂。。。这些,是不是,我们就不那么浮躁了点?
    写程序是一门艺术,这样才符合他的名字“程序设计”。既然是设计,那就让我们的程序看上去更美一点吧。。。

前言

 

    我的主要编程语言是PHP。我会让这些规则尽可能的通用,以便他们也适用于其他程序场合。在可读性章节中有个例外,我是用PHP写的例子,某些语法可能不同。
    抓紧你的键盘和你旁边的止血药。文章的最后会有血流出来。(实在汗,真不知道怎么翻译shuriken。。。,意思就是文章最后有让你惊讶的吧)

可读性

    可读性的关键因素

     空白

      空白不要钱,尽管用。我知道有些人不赞同,但在我看了他们糟糕的代码之后,让代码留有空白真的很重要。把你的代码看作一本书,你有必要让眼睛很容易找到空白和分割的地方,才能详细分析你的代码,才能找到你看的分割的地方。
   

     对齐

       当你有很多行相似的代码是,问问你自己是否能让代码对齐,或者能用一种容易表达的方式来分组,同时也更容易从中提取信息。
      

一致性

      在个人或团队项目中,一致性很重要。总得来说就是在你的整个应用中,保持代码风格一致。

    个人

       一致性在个体中更难保持。自从你成为一个程序员,你的技术在发展。你不可能总是回过头更改你以前的代码,让他们和你新的发现保持一致。有时候你会,但并不总是这样做。
       你很可能会创建你自己的库。像你所知,一个库是一个你引入到每项工作中的一个代码集合。基本上是你自建的工具箱。你开始理解函数和面向对象了,以便让你的 生活更加简单并减少重复的任务。让你的库时刻更新很重要,你得花时间修复你的库。你的库就是你的工具箱,你要让你的工具总是锋利,如果你的一件工具变钝 了,你要让它锋利,或者替换掉。

    团队

      当你进入一个项目时,不要引入你自己的代码风格。项目的风格要让每个人很容易就遵守。如果你给wordpress开发一个插件,你就得遵守这样的方式,让你的代码像是wordpress的一部分。即使很糟糕。为什么呢?一致性很重要!
      如果你要看整个工程的代码,你不会想看到到处都是不同的代码风格。这妨碍你大脑的理解。即使不是你喜欢的代码风格,一致行也是重要的,应该维护工程的整体可读性。

组织

      这个部分是一致性和可读性的综合。整个工程中,你应该把你的代码和文件组织成统一的方式。如果你在文件头部有一个引入,你应该在每个文件中都是在相同的位置引入。

    代码

      MVC模式,大家都清楚(不再多翻译)。你应该用MVC模式组织你的代码。

    文件结构

      文件结构也就是目录结构。比如你把库文件放入lib目录中,那么在另外的地方的lib目录,也应该放的是库文件。相同的文件要组织在一起,比如javascript文件放入js目录,css文件放入css目录等等。

可伸缩性

      做为一个程序员推销你自己,你的代码的可伸缩性很重要。同时让你的代码提供扩展能力,也很重要。达到伸缩性的最好方式是在可能的时候把事物抽象。即使你认为你不需要扩展,抽象是很好的实践,这点无容置疑。
      如果你参与一个大型项目,不要说“到那的时候,我们会过桥”。没错,过桥,但是得保证到那的时候桥是建好的。项目早期,很容易就能修复一些问题,也并不花费太多步骤。

可支持

      这篇文章的前四部分归结为一句话:可支持。可支持的代码是什么?可支持的代码容易增强,容易修改,容易改正。你离开项目之后,加入某个人要改正你曾经负责代码中的一个bug,你的代码可支持性越好,改正的也就越快。大家伙喜欢你。

    注释

      到现在为止,可能有人一直期望我讲出一直没有被提到的注释。我故意把它放在最后的。注释是创建可支持代码的最完整部分。你的代码在必要的地方需要说明自己,有注释在那,将来会节省很多时间。

     什么时候用注释

      函数:注释用来描述期望的输入、输出,以及函数的功能。
      复杂的逻辑:用注释给出下面几行代码的容易理解的描述。
      声明的变量:指出一个变量的目的。
      非直觉方法:当你用非直觉方法解决某个问题时,必须要注释。

     什么时候不用注释

      如果你总是写注释,那就没有意义了。注释应该是评论,而不是叙述。
         
          1.不要声明你要干吗。比如对变量做循环。
          2.如果你的代码是冗余的,就不要注释。比如检查一个变量是否等于8。

结论

      上述的每一条都应该成为一个习惯。文章的没有一部分都关系密切,组织需要一致,一致需要组织,可读需要一致,可支持需要所有。
It’s a vicious ninja star. Use it to tear through your enemies.实在不明白意思。。。

意思我想都明白了,至于翻译。。。汗。再汗。阿富汗。。成吉思汗。。。
       
      

 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值