zoukankan      html  css  js  c++  java
  • 从小工到专家 2019.10.18

    第二章 注重实效的途径
    分为重复的危害,正交性,可撤销性,曳光弹,原型与便笺,领域语言,估算七个小的方面。
    其中是我获益匪浅的有:
    重复的危害:
    当我们在开发的规范当中,过程与程序中很容易重复表述知识,而一旦这样做,就是在向维护的噩梦发出邀请——在应用发布之前就开始的噩梦。
    重复的危害举一个简单的例子:在程序当中我在两个或更多的地方表示同一事物,如果我要改变其中一处,就必须要记得改变其他各处,或者如书中所举的异性机器的例子一样,因为自相矛盾而被迫崩溃。
    而要避免重复,就必须要了解重复产生的原因:
    1.强加的重复:开发者觉得他们别无选择——环境似乎要求重复。
    2.无意的重复:开发者没有意识到他们在重复信息。
    3.无耐性的重复:开发者偷懒,他们重复,因为那样似乎更容易。
    4.开发者之间的重复:同一团队(或不同团队)的几个人重复了同样的信息。
    而这些原因,都或多或少的出现在我们的身上,我们所能做的,就是时刻警醒,警惕这些重复,每次完成程序之后自我反问有没有出现之上的重复,出现的原因为何,下次如何注意等等。
    正交性
    正交性是制作易于设计,构造,测试及扩展的系统的一个十分关键的概念。在几何当中,如果两条直线相交成直线,它们就是正交的。而在计算机中,正交性用于表示某种不相依赖性或是解耦性;如果两个或更多事物中的一个发生变化,不会影响其他事物,这些事物就是正交的。如在设计良好的系统中,数据库代码与用户界面是正交的;我可以改动界面,而不影响数据库;更换数据库,而不用改动界面。
    我理解正交性,即认为在编写程序之时,要保持各个程序或者方法之间的独立性,消除无关事物之间的影响,将全局修正变为局部修正,减少程序开发维护时的工程量;并且隔离了各个代码区之间的风险,提高程序健壮性;避免与特定的事物捆绑在一起,给与自我极大灵活性。
    可撤销性
    不要让自己的程序在一棵树上吊死,要知道解决问题的方法永远不只一种,提前为自我留存后来,例如使用某种技术,不要一味依赖它,将它与自己捆绑在一起,如果某次项目几乎完成,客户却要求使用另一种相似的技术,会不会感到崩溃,而此时,可撤销性就尤为重要,为程序提供灵活的接口来更换技术,
    进行灵活的架构。
    曳光弹
    运行具有标记的程序,把它当作自己的曳光弹,来测试自己的程序,将不足标记出来,即时反馈,及时更改。并且通过使用“曳光弹”,可以将自己的进程展示给用户,让客户有东西可以看,实时感受到项目的进程,认同我的努力,让客户对自己有信心。

  • 相关阅读:
    Java进阶之内部类
    Java进阶之集合框架
    Java进阶之异常
    Java进阶之JVM虚拟机(Java Virtual Machine)
    Java进阶之String类
    Java进阶之Nnumber类和Math
    Java基础之流程控制语句
    Java基础之标识符与修饰符
    Java基础之数据类型与运算符
    数据库事务与事务隔离级别
  • 原文地址:https://www.cnblogs.com/cxy0210/p/11696248.html
Copyright © 2011-2022 走看看