假期总结——设计臭味

来源:互联网 发布:欧美彩妆品牌知乎 编辑:程序博客网 时间:2024/04/26 07:59
     做了不少项目了,拿着自己以前写的代码看上面这些书的时候,感觉真的有点无地自容的感觉!
     不过我正在努力去改正,在还没有工作之前,我一定会让自己进步的!
     下面就是我在学习面向对象设计原则一点总结了!理解并不充分,写这个只是为了让自己复习一下书中的内容!如果有高手们看到了。小弟希望能给予指引!
       
   
      以前自己写的一些代码那么乱,看书后才发现是原来是违反了设计原则!也就是大家说得设计臭味吧!
 
       1、僵化性
                    是指难以对软件进行改动,即使是简单的改动。如果单一的改动会导致依赖关系的模块中的练锁改动,那么我们的设计就是僵化的。(常见)
       2、脆弱性
                    是指,在进行一个改动时,可能会导致程序许多地方出现问题,常常是出现新问题的地方与改动的地方并没有概念上的关联。要更正这些问题又会引出更多的问题!(非常常见)
        3、顽固性
                    是指,设计中包含了对其他系统有用的部分,但是要把这些部分分离出来所要的努力和风险却是巨大的。
         4、粘滞性
                     它有两种表现形式,一种是软件的粘滞性和环境粘滞性两种!其中软件粘滞性当可以保持系统设计的方法比拼凑手法更难应用时,就表明设计具有高的粘滞性,做错误的事情是容易的,但是做正确的事情却更难。我们希望在软件设计中,可以容易地进行那些保持设计的改动。(说真的,我好像一点也不明白!)
         5、不必要的复杂性
                      是指设计中包含了当前没有用的部分,它就含有不必要的复杂性,当开发人员预测需求的变化,为过多的可能性做准备,致使设计中含有绝不会用到的结构,从而带来的回报。
          6、不必要的重复
                      是指,当同样的代码以稍微不同的形式一再出现的时候,就表示开发人员忽略了抽象。当系统中有重复的代码时,对系统进行改动会很困难。在一个重复的代码体中发现的错误必须要在每个重复体中一一更正。
          7、晦涩性
                       是指模块难以理解,代码随着时间而演化,往往会变得越来越晦涩。为了使代码的晦涩性保持最低,就需要持续的保持代码清晰和富有表达力。

      上面的一些东西全是书上的东西,为了让自己加深印象我有打了一篇,我会努力将这些东西放在我脑子里,并在以后的编码过程中努力去避免!
            

     
      


    

 
原创粉丝点击