`
Fhappy
  • 浏览: 69086 次
  • 性别: Icon_minigender_1
  • 来自: 长沙
社区版块
存档分类
最新评论

学习总结

 
阅读更多

 

异常处理有点像艺术性问题,没有标准的解决方案,只有靠平时的积累和经验总结。

有一点值得我们去琢磨,异常是由方法自己处理掉,还是将其抛给调用者。无论是选择异常都由自己处理掉,还是都抛给方法的调用者,都不是好的解决方案。

每个方法都有它的责任,都要尽量保证程序的健壮性。如何处理异常,要考虑到不能让自己崩溃,要避免因为自己处理掉异常,而给调用者造成死循环或者内存溢出等问题。

 

2.代码模块化

我们听说过契约式编程,一个方法就是一个承诺,只要按照规定的协议,有什么样的输入,就能得到与之对应的既定的输出。

一个方法要尽量的"单纯",它只是处理一个个的简单的问题。这样有几个优点:

一是代码看起来简洁,因为一个方法中只有几行代码,逻辑有条理,思路清晰;

二是,容易查找错误,一个问题只是出现在一个方法中,在这几行代码中找错,显然比在一大片代码中找错容易;

三是,容易对这一个方法进行测试,容易验证其可靠性。

 

3.代码中日志的使用

以前都没有使用过错误日志,一直都是使用System.out.println()语句来查找错误。

在初级的时候用这个感觉还不错,但是越往后面学习,随着要编写的程序的增大,如果都是用控制台输出语句,就会发现有时候难以找到是哪个地方的代码出现了问题。即使解决了所有问题,当我们把软件交给用户使用的时候,已经没有控制台可供输出查看。而且,在调试好后,如果要将这些输出语句删除,就有可能会带来新的问题,并且这些问题不容易找到的。

例如:

if(port<0)
System.out.println("port值不能小于0,port:"+port);
while(true){
	//略
}
 

当我们把上面的输出语句删除后,虽然不会报错,但是会出现比较严重的逻辑错误。而且,事后是很难找到这个问题,这无疑会增加软件开发的成本。所以,在以后的程序编写中,要重视和利用日志的作用。

日志的使用也有几种方式,一是在控制台输出,二是在界面显示,三是存入文件,四是发送到网络。选择哪一种比较好,要考虑程序的大小、业务量的规模,只在本地使用,还是经常与网络通信有关等因素,这个要具体问题具体分析,需要我们慢慢去总结。

0
4
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics