美文网首页
代码整洁之道

代码整洁之道

作者: one_zheng | 来源:发表于2019-03-26 19:47 被阅读0次

1. 什么样的代码是有缺陷的呢?哪些你没把握的代码都是!

2. 如果你希望自己的软件灵活可变,那就应该时常修改它! 该在什么时候做这些简单的小修改呢?随时!关注哪个模块,就对它做点简单的修改过来改进结构.每次通读代码的时候,也可以不是调整一下结构

3. 把switch语句改为多态结构,或者将继承层次重构成一条“命令链”

4. 每个专业软件开发人员必须精通的事项:

  • 设计模式。必须能描述GOF书中的全部24种模式,同时还要有POSA书中的多数模式的实战经验。
  • 设计原则。必须了解SOLID原则,而且要深刻理解组件设计原则。
  • 方法。必须理解XP、Scrum、精益、看板、瀑布、结构化分析以及结构化设计等。
  • 实践。必须掌握测试驱动开发、面向对象设计、结构化编程、持续集成和结对编程。
  • 工件。必须了解如何使用UML图、DFD图、结构图、Petri网络图、状态迁移图表、流程图和决策图。

5. 做出承渃,包含三个步骤

  • 口头上说自己将会去做
  • 心里认真对待做出的承诺
  • 真正付诸行动

你问IT部的人“为什么网络这么慢”,他说:“是啊。我们真得再弄些新路由器了。”听到这种回答时,你知道这件时后续不会有任何进展。

你要求项目组的某位成员在检入源代码之前先做些手工测试,他回答说:“好的。希望今天下班前能到这一步。”你会感觉明天还得再问问他在检入代码前到底做了测试没。

老板走进你的办公室,嘴上念叨着“我们的进度得再快点儿才行”。这时,你知道他的真实意思是你的进度得再快点儿。因为他自己并不会亲自参与进来。

以下示例中包含的几个用词和短语,会透露“缺乏承诺”的蛛丝马迹,要注意搜寻。

需要、应当。“我们要把这活做完。”“我需要减肥。”有人应当负责去推动这件事“”

希望/但愿。“希望明天我能完成这个任务”。“希望改天我们能再见面”

让我们(而不是让我)。 “让我们回头再见”。 “让我们把这事做完”

真正的承诺听起来是怎样的

例如:我将在....之前...(我将在周二之前完成这个任务)

6. 编码要求

  • (1)首先,代码必须能够正常工作;
  • (2)代码必须能够帮你解决客户提出的问题;
  • (3)代码必须要和现有系统结合得天衣无缝。你的代码不能让系统变得更僵硬、更脆弱、更晦涩,必须要妥善管理好各种依赖关系;
  • (4)其他程序员必须能读懂你的代码。这不仅包括写好注释这类事,还包括要精心锤炼代码,使它能够表达你的编程意图。

  如果感到疲劳或心烦意乱,千万不要勉强编码。强而为之,最终只能再回头返工。

7. 测试驱动开发(TDD三项原则)

  • (1)在编好失败单元测试之前,不要编写任何产品代码;
  • (2)只要有一个单元测试失败了,就不要写测试代码;无法通过编译也是一种失败情况。
  • (3)产品代码恰好能够让当前失败的单元测试成功通过即可,不要多写。

8. 时间管理

  会议:
  (1) 如果会议让人厌烦,就离席;你可以解释说,自己抽不出更多时间用于这场会议;
  (2)如果收到会议邀请,务必弄清楚指定的议题是什么,每个议题花多长时间,要取得什么成果。如果得不到确切的答案,你可以礼貌拒绝。

9. 承诺与预估

  承诺是必须做到的。如果你承诺在某天做完某事,就必须按时完成,即使它意味着你必须每天工作12小时,放弃周末的休假,也不得不如此。

  预估是一种猜测。它不包含任何承诺的色彩。它就不要做任何约定。预估错误无关声誉。我们之所以要预估,是因为我们不知道到底要花多少时间。

预估任务时间:三元分析法

  预估是非常容易出错的,所以才叫预估。控制错误的办法之一是使用大数定律。意思是:把大任务分成许多小任务,分开预估再加总,结果会比单独评估大任务要精确很多。这样做之所以能够提高准确度,是因为小任务的预估错误几乎可以忽略,不会对总的结果产生明显影响。

10. 结对编程
  结对是复查代码最好的方式。系统中不应该包含未经其他程序员复查过的代码。最有效率最有效果的代码复查方法,就是以相互协作的方式完成代码编写。

11. 有凝聚力的团队
  1.发酵期
  成员客服个体差异性,默契配合,彼此信任,形成真正有凝聚力的团队,是需要一些时间的,可能需要6个月,甚至1年。但是,凝聚力一旦真正形成,就会产生一种神奇的魔力。团队的成员会一起做计划,一起解决问题,一起面对问题,一起搞定一切。
  团队已经有了凝聚力,但却因为项目结束了就解散了这样的团队,则是极为荒谬的。最好的做法是不拆散团队,让他们继续合作,只要不断把新项目分派给他们就行。

  2.团队和项目,何者为先
  试图围绕项目来构建团队。这是一种愚蠢的做法,按照这种做法,团队永远都不可能形成凝聚力。每个人都只在项目中的过客,只有一部分时间是为项目工作,因此他们永远都学不会如何默契配合。
  专业的开发者组织会把项目分配给已形成凝聚力的团队,而不会围绕项目来组建团队。一个有凝聚力的团队能够同时承接多个项目,根据成员各自的意愿、技能和能力来分配工作,会顺利完成项目。

  团队比项目更难构建。因此,组建稳健的团队,让团队在一个又一个项目中整体移动共同工作是比较好的做法。在组建团队时,要给予团队充足的时间,让他们形成凝聚力,一直共同工作,成为不断交付项目的强大引擎。

相关文章

  • [代码整洁之道]-整洁代码

    前段时间,看了代码整洁之道,顺手做了些笔记,分享给大家,和大家一起探讨整洁代码之道。 1.1要有代码 代码是我们最...

  • 代码整洁之道-<函数>

    代码整洁之道-<函数> 代码整洁之道 一书相关读书笔记,整洁的代码是自解释的,阅读代码应该如同阅读一篇优秀的文章,...

  • 代码整洁之道

    01、有意义的命名 在团队开发中,团队小伙伴编码风格各不相同,一个统一的规范就显得尤为重要,最近在做Code Re...

  • 代码整洁之道

    整洁代码 Leblanc : Later equals never.(勒布朗法则:稍后等于永不) 对代码的每次修改...

  • 代码整洁之道

    海到无边天作岸,山登绝顶我为峰。作为猿类的我们,对自己创造的代码有着一种天生的无比自信。这是好事~可是,对于我们的...

  • 代码整洁之道

    1.一次只做一件事的原则 除了最外边必要的空判断,少用return操作符。原则如下图所示:一次只做一件事情.png...

  • 代码整洁之道

    一.整洁代码 借用一条美国童子军简单军规:让营地笔记来时更干净 二.有意义的命名 2.7避免使用编码编码已经太多,...

  • 代码整洁之道

    大概读了一下《代码整洁之道》这本书,总结如下: 1.变量名:有意义、可读性好 2.避免重复和无意义的条件判断 3....

  • 《代码整洁之道》

    细节之中自有天地,整洁成就卓越代码。 软件专家RoberfC.Marlin在《代码整洁之道》中为你呈现出了革命性的...

  • 《代码整洁之道》

    马丁(Robert C. Martin) 第1章 整洁代码 写整洁代码,需要遵循大量的小技巧,贯彻刻苦习得的“整洁...

网友评论

      本文标题:代码整洁之道

      本文链接:https://www.haomeiwen.com/subject/jazrvqtx.html