Refactoring -- Rename (重命名,为方法,类,参数等重命名)

     好像没什么好说的,就是让方法名,类名,参数等等的名称都能做到“见文识意”,让代码带有更多的语义,这样有啥好处呢?作为开发人员的我们,维护或者调用其他开发人员写的代码的可能性还是很大的吧,你是否有感触命名对代码的可维护性的重要性呢?(没感觉?那肯定是受害不深,呵。)

    按照敏捷的意思是要考虑尽可能的把注释写进代码里,因为代码的修改频率大大的高于注释的维护频率,往往代码修改了,注释还是“风采依旧”,这样导致注释对代码的误注,让维护人员更头大。

   没错,说得都挺好,说出来谁也都明白,关键是为啥代码中的这个“异味”就是如此的难以清除呢?(难道也是因为编码者受害不够深?)本人也是苦苦追寻,不知其解。个人总结两个字“忽悠

    你是否在问某个具体问题如何解决还是在追寻某类问题如何解决呢?你是否只为解决问题而在求助还是也会思考问题背后的真理呢?你是否碰到有人问你问题时你给他讲述理论时却被要求只要解决方案呢?等等,这些忽悠过去就完事的态度,导致在写代码的时候当然不会考虑到维护代码人员的痛苦,更不会为老板考虑成本了。(维护成本,bug增加带来的成本)。

  这种忽悠个人主要来自管理层了,管理层不重视代码质量,只为完成所谓的功能,交差即可。(政治工程做好即ok。)没有长远做大做强的意识。当然其次是coder自己了,对自己没要求,对自己的成长没有想法。(个人观点,别多想!)。

见过用中文命名变量的没?你说编译器也太强大了吧,这下搞得注释真写进代码里头了,呵。(个人认为还是太二,不专业!)

我也忽悠完了,看看demo吧,感受重命名的魅力吧。

         public   class  Person
        {
            
public   string  FN {  get set ; }
        
            
public   decimal  ClcHrlyPR()
            {
            
//  code to calculate hourly payrate
                 return  0m;
            }
        }
//  Changed the class name to Employee
public   class  Employee
 {
    
public   string  FirstName {  get set ; }

    
public   decimal  CalculateHourlyPay()
    {
    
//  code to calculate hourly payrate
     return  0m;
    }
 }

一切尽在不言中,感受去吧!

 

你可能感兴趣的:(refactor)