问题描述
日志打印是一个很重要的事,现在一般都是在程序内直接打印文本内容进行的,而我现在正做一个日志编码的工作,意思就是把之前的文本内容用数字编码来代替,但引出一个问题就是:如果在程序源码内硬写数字码会带来相当的不方便,造成开发人员每需打印一次日志就需去编码表里找到相应的数字码,这样很不方便也不利于阅读及维护也困难,在此请各位大侠有没有人有过这样的经验,能提出好的建议,谢谢!
解决方案
解决方案二:
大神们,给个思路,提点建议,自己帮顶下
解决方案三:
数字码用于统计,而文本也要保留用于方便查看.
解决方案四:
每个错误代码对应不同的错误吧?怎么会维护困难?你们开发人员真矫情
解决方案五:
枚举
解决方案六:
引用3楼FoxDave的回复:
每个错误代码对应不同的错误吧?怎么会维护困难?你们开发人员真矫情
对,每个错误代码对应不同的错误,这个会建立一个库来维护这个对应关系,现在的问题是在源码里是直接硬写数字不利于开发人员的方便性,这样每次都需要去查编码表,意思是能否有更方便的方式,如通过智能的提示啥的?
解决方案七:
这个错误库做成可以查询的就好了呗
解决方案八:
1、不知道你描述的编码,是日志分类的意思,还是日志记录ID的意思?如果是日志分类,那你程序里面可以用枚举2、开发人员打印日志,现在是怎么检索的?你编码以后,重新分装一个方法让他感觉不到你编码了,还是维持原来的检索习惯呗。这不就是面相对象封装的概念么~你去ATM取钱,你输入金额100,ATM拿一张一百的给你,现在银行系统升级了,对存放不同面值的盒子进行编码(1-100面值,2-50面值),不管怎么编码,对应取款人员来说,点100的按钮取钞口出来的就是100的面值,和你内部怎么编码无关。
解决方案九:
你不预先编码,难道还能自动产生不成?日志本来就是输出逻辑的一部分,文字已经简化为编码都不愿写,干脆连整个程序都不要写算了,你们的程序员真矫情。。。
解决方案十:
引用7楼lovelj2012的回复:
1、不知道你描述的编码,是日志分类的意思,还是日志记录ID的意思?如果是日志分类,那你程序里面可以用枚举2、开发人员打印日志,现在是怎么检索的?你编码以后,重新分装一个方法让他感觉不到你编码了,还是维持原来的检索习惯呗。这不就是面相对象封装的概念么~你去ATM取钱,你输入金额100,ATM拿一张一百的给你,现在银行系统升级了,对存放不同面值的盒子进行编码(1-100面值,2-50面值),不管怎么编码,对应取款人员来说,点100的按钮取钞口出来的就是100的面值,和你内部怎么编码无关。
编码可以理解成日志记录ID的意思,就是用一串数字来替换文字,现在是直接把数字码写在源码里面不利于程序员的查找,维护也不方便,能否有更智能提示功能一样不需要人员去查数字码值表。
解决方案十一:
引用8楼xuanbg的回复:
你不预先编码,难道还能自动产生不成?日志本来就是输出逻辑的一部分,文字已经简化为编码都不愿写,干脆连整个程序都不要写算了,你们的程序员真矫情。。。
哥们,不是不愿意写,而是想找一种更方便的方法,直接写数字码在源码里不利于程序员的工作及方便性。
解决方案十二:
用枚举,自己搜下
解决方案十三:
引用10楼hnwl0507的回复:
Quote: 引用8楼xuanbg的回复:
你不预先编码,难道还能自动产生不成?日志本来就是输出逻辑的一部分,文字已经简化为编码都不愿写,干脆连整个程序都不要写算了,你们的程序员真矫情。。。哥们,不是不愿意写,而是想找一种更方便的方法,直接写数字码在源码里不利于程序员的工作及方便性。
我可以负责任地告诉你,没有办法!原因我再说一次:事件码(预定义的日志代码)是逻辑而不是值!你可以做的也就是找个人把这些日志都定义成静态方法,然后让别人用的时候调用而已