提高代码可维护性(2)---日志打印

来源:互联网 发布:犀飞利大鉴赏家淘宝 编辑:程序博客网 时间:2024/05/11 20:59

    代码维护手段有很多种,有单步,消息跟踪,栈打印,下面重点讲讲日志打印。

    网上看到Python的八荣八耻如下:

以动手实践为荣 , 以只看不练为耻;以打印日志为荣 , 以单步跟踪为耻;以空格缩进为荣 , 以制表缩进为耻;以单元测试为荣 , 以人工测试为耻;1046315以模块复用为荣 , 以复制粘贴为耻;以多态应用为荣 , 以分支判断为耻;以Pythonic为荣 , 以冗余拖沓为耻;以总结分享为荣 , 以跪求其解为耻;
    第二条就是以打印日志为荣,以单步跟踪为耻。也不知道是否所有人都能接受这一点。
但是往往大部分时候,对程序的维护人员来说,日志打印是问题定位的最后一根救命稻草。
单步跟踪不是什么条件下都可以的,尤其是一些难以重现的BUG或者测试部的环境。此时一
个良好的打印显得尤为珍贵。
    日志应该是维护代码中最经济,快捷的方式。实现特别容易,但是一个良好的日志打印
却不是一个简单的活。
    打印作为维护代码,最主要的作用就是快捷的收集恰当的信息以方便定位。信息量过大,
让定位的人困扰,信息量过小, 没有有效的信息。两者都不行。所以打印不是随便加就
能加好的。要加好打印信息,个人体会要遵守一些基本原则。
    1.像打印之类的维护代码,应该纳入设计阶段。
    有一句话叫 好的代码是设计出来的。这句话从一个侧面就提出来,我们要写容易维护的代码
,那么在设计阶段就应该充分考虑代码维护问题。比如应该设计格式统一的日志打印
方法,还比如在业务逻辑的关键点,一定要打印等。
    只有在设计阶段统一考虑维护代码问题,才能避免各个开发人员各自为政。出现风格不统一的打印,
整个打印才更有整体逻辑性和整体性。
    2.打印一定要分级别
    按道理说这个应该是设计者就定下来的,多少级别,级别划分(如划分为fata,error,debug,
infor等级别)。但是希望开发着一定要理解这一点。打印如果不分级别,一团糟,
那么代码维护人员很容易被淹没在过多的日志打印中。不好的打印还不如没有打印。
    3.打印代码同样需要维护
  代码需要不断的更新维护,同样日志打印代码也是一样的。要不断根据业务的发展,更新维护代码。
这样才能保证打印日志是有效的。
  总之,通过精心设计,良好维护的日志打印一定会为代码的维护性增色不少!
    
  
 
    
原创粉丝点击