昨天我发了一个一种无 HTTPS 的安全通信方式帖子,结果不到半个小时就结贴了,今天我又来推广我的 idea 了,大家来看看这个是不是也无用
事情起因是这样的,对于 java 异常的使用我始终不明白最佳实践是什么,对于 log 中的异常不能确定是自己抛的忘了 catch 还是使用 api 不当造成的,后来我苦思冥想想到了一种 java 异常的实践: 对于程序中考虑到的异常全部都用自定义的异常,每个项目都配置一个根异常类,比如说 XXXAppException 作为这个 app 的根异常,后续异常全部都继承这个。在 Java 领域,无论是 web 还是 Android 都有一个统一接收未 catch 异常的地方,android 的捕捉异常机制好像是 UncaughtExceptionHandler,web spring 也能捕捉所有抛出的未 catch 的异常。我们只需要在异常终点这里辨别抛出的异常是不是 XXXAppException 及其子异常就可以了。如果是,说明这个异常是开发阶段考虑到的,在异常类中我们也可以定义一些该异常的相关信息,比如异常码,提示信息等;如果不是,可以马上把这个异常报告给开发人员,这个异常是开发阶段没考虑到的,会酿成什么事故还不能确定,需要开发人员立即处理。
为了实践这个理论,我还做了一个生成异常类的项目
https://github.com/helloliuyiming/java-exception-class-generator
奈何前端技术太菜,现在这阶段根本不能用,等秋招过去有时间就完善。
大家觉得这个怎么样?
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.