读书人

疯子在思考之-忘掉错误

发布时间: 2013-10-18 20:53:13 作者: rapoo

疯子在思考之-忘掉异常

?程序异常会中断程序执行,所有所有的异常都需要捕获,否则会导致程序中断,一般异常由服务提供者捕出,由服务调用者捕获。这里借用think in java ?的服务器程序员与客户端程序员概念。

?

为什么使用异常

1 返回的类型不支持,通过异常返回给用户。例如 boolean login(username,password)

2 可以显示的提示客户端程序员进行捕获异常并做出处理

其他理由有经验的同学补充

存在问题:性能

解决办法:

有人通过?覆写fillInStackTrace

http://www.blogjava.net/stone2083/archive/2010/07/09/325649.html

参考这里

我的方案

通过枚举取代异常

1 解决boolean类型不支持多种情况的返回结果

2 客户端可以通过swith显示对所有错误进行处理

?

附错误代码规范 参考新浪微博错误代码

http://open.weibo.com/wiki/Error_code

疑问:公共错误的错误信息处理

?如 content is null?

不同模式的内容为空提示信息应该是不一样的

如微博为空

评论为空

用户名为空

密码为空等

他们的错误代码是一样的

但提示信息不同,怎么定义最为合适呢?

我的方案

错误枚举:

ERROR_TYPE{

CONTENT_IS_NULL("20001"),

WEIBO_IS_NULL("20001",模块编码 )

}

客户端通过枚举的key获取配置的错误信息+错误代码返回给客户端

?

本篇文章有自己的思考和疑惑,欢迎大神们拍码

参考文章

http://www.iteye.com/topic/2038

http://keyknight.blog.163.com/blog/static/366378402009327331741/

http://blog.csdn.net/ilibaba/article/details/3965359

?

读书人网 >编程

热点推荐