什么时候要catch并抛出异常

自从接触Catch开始,就知道要catch不确定的代码然后抛出异常.

但是 随着项目层级调用越来越复杂,有些层要调用N端不确定的代码,各种Catch,并对exception的各种处理. 代码乱不说,也不好阅读维护.

一直在想 在哪一层Catch,throw,哪一次做处理.

知道今天才认定应该按照这样思维模式来做

底层官员向上一级反馈问题,下级必须要给上级一个确切(ErrCode,ErrDesc)的说法,不容许含糊其辞的推脱(Catch ,throw ex)

但是当某个级别的官员上头已经是最大的官了(UI层),这个时候为了防止万一下级出现了未知的纰漏,导致不好交差,还是不要把结论说死,需要给上面一个善意谎言,

给自己留条后路,这个时候我们需要cathch,同时友善提示.并将详细异常铭记于心(log),最后时候复查.并做纠正

综上,所有不予UI打交道的层,都应该将各种异常囊括与ErrCode和ErrDesc中,代码中不需要catch,

到了与UI打交道的层,才需要Catch,并包装异常,友善提示.

posted on 2017-02-06 16:24  斯普劳特【深圳】  阅读(338)  评论(0编辑  收藏  举报