《Clean Code》学习之—Error Handling

        前面六章都是Bob大叔的作品,花了一段时间终于看完了,也用书里面讲的方法重构了以前写的一些代码,感觉用过后代码确实流畅多了,以后一定要将这些好方法运用到工作中去,好好享受编码的过程。

        接下来开始,就是Bob大叔团队中的大佬们的作品了。

        本章主要是错误处理的内容,还记得前段时间写导入CAD图的功能时,由于导进了一张非法的图(非CAD图),之后进行的错误处理弄了很久,在函数之间传递了很多返回值才将错误处理消息发出来,看了书之后,发现这种处理方法是大错特错的,应该按照书中所说的办法去修改才好。

        错误处理是编程过程中常常要去处理的东东,因为输入可能非法,设备可能出错,总而言之,事情会出现差错。作为程序员,我们有责任来确保我们的程序会执行应该做的事情。

        如果代码中到处都是错误处理,则很难明白这段代码实际上要做什么事情。错误处理很重要,但是如果它搞乱了代码的逻辑,则是错误的做法。

        Use Exception Rather than Return Code(使用异常而不是错误处理)

        Write Your Try –Catch – Finally Statement First(一开始就写Try – Catch-Finally)

        异常的一个有趣的地方就是他们在你的程序中定义了一个范围。当你在try-catch-finally的try部分执行代码时,它表示执行过程随时可以终止,并在catch中重新开始。

        Use Unchecked Exceptions(使用不可控异常)

        什么叫可控异常:每个方法都要列出它可能传递给调用者的所有异常。并且这些异常是函数类型的一部分,如果签名与代码所做的实际之事不合,则不能通过编译。可控异常不好的地方就是你对一个异常要层层声明,会破坏开放封闭原则。

        Provide Context with Exceptions(抛出异常的时候要提供足够的环境信息)

        Define Exception Classes in Terms of a Caller’s Needs

        Don’t Return Null(不要返回Null)

        Don’t Pass Null(不要传递Null)

        这一章作者的结论就是Clean Code要具备可读性,同时还要很健壮。错误处理代码应该跟主要的逻辑保持独立。

posted @ 2011-10-31 10:28  Core Hua  阅读(555)  评论(1)    收藏  举报