• 《程序员修炼之道——从小工到专家》 第二章部分读书笔记


    1.重复的危害  就重复产生的种类,可以分类为:

    (1) 强加的重复  信息的多种表示,对于同一信息我们可以用不同形式表示。这在一定程度上造成了重复,就这个问题而言,我们可以编写简单的过滤器和代码生成器,用公共的元数据表示结构。

                              代码中的文档,对于一些低级知识不需注释,对于一些高级知识才需要注释,这就可以避免了重复。

                              文档与代码, 对于文档的设计,我们可以自动生成文档,而不需要每次都去写。

                              语言问题,在换用语言时,会明显的产生各种各样的重复。对于这种情况没有太多的解决方法,只能通过人为的后期修改。

    (2)无意的重复 这种重复的要点在于一些变量的定义时,无意的进行了重复,一些类的定义属性进行了重复。这种重复很难避免,但这要我们有着良好的书写习惯。

    (3) 无耐性的重复 在某些项目很赶的时候,我们会选择去复制之前的代码并且做出简单的修改。但这种其实也是一种重复,需要我们养成很好的习惯。

    (4) 开发者之间的重复 在编写一个具体项目时,会有不同的开发者。如果这两者之间缺乏交流,那么最后可能会导致某个功能被多次重复实现。要解决这种情况最好的办法就是鼓励开发者之间交流。

    2.正交性 

        所谓的正交性,是从数学上学来的概念。在计算机中,可以解释为某种不相依赖性或者说解耦性。这种正交系统有着很多明显的好处:可以提高生产率,降低风险。那么我们应该怎么在工程中应用这种思想呢?有着这么几种方式:项目团队,设计,工具箱与库 ,编码,测试,文档。可以看到,不同情况下正交性的实现方法也不相同。我们应该具体情况具体而论,不能一概而论。在工作中尽力做到实现正交性,增加解耦性。

    3.可撤销性

      工程师都喜欢能够有单一的方法来解决一个问题,然而很遗憾,在我们的现实生活中,总是会有各种各样的变动。在这样的情况下,我们就需要让我们的代码具有可撤销性。 

      所谓的可撤销性,指的是在开发初期就做好一些准备,让代码变得更加灵活,以便一些临时更改。在制作架构时,可以让架构更加的灵活可变,在这样的情况下我们的代码就具有了可撤销性,不会让代码十分不可逆。

    4. 曳光弹

      所谓的曳光弹,放在工程中其实就是用来方便前期测试的一个架构。只有一些框架和基本功能,可以用来测试框架里一些基本功能,曳光代码的存在只是为了前期的测试,他只是具有较少的功能,但并不代表他并不能执行,就这点来说,曳光代码其实也是整体架构的一部分,他的存在只是为了测试。

  • 相关阅读:
    [NOI2002]银河英雄传说
    Splay普及版
    线段树普及版
    长连接与短连接
    【HTTP】中Get/Post请求区别
    【HTML】知识笔记
    SVN使用教程总结
    《人生只有一次,去做自己喜欢的事》读书笔记
    【HTTP】无状态无连接的含义
    【HTML】解析原理
  • 原文地址:https://www.cnblogs.com/wushenjiang/p/11973758.html
Copyright © 2020-2023  润新知