欢迎来到Kittow的部落格! - http://blog.skyhe.com
Agile Web Development (敏捷Web开发)
Want to Know Something More? Move Your Mouse Here;)我是天空的一片云,偶尔投影在你的波心,你记得也好,最好你忘掉,你我在交汇时,互放的光亮。
——徐志摩《偶然》 More...
ASP | ASP.NET | PHP |
ColdFusion | Perl | Python |
我是天空的一片云,偶尔投影在你的波心,你记得也好,最好你忘掉,你我在交汇时,互放的光亮。
——徐志摩《偶然》 More...
实际上如果谁能够修正或者了解这个exception,那么他通常也就有能力避免这个exception的出现。 一般性的业务错误,比如用户名密码错误,比如用户输入错误,比如一般性业务逻辑错误,我们都是通过代码进行逻辑判断的。不会抛出异常。只有那些我们没有考虑到的情况才会导致异常。而实际上我们在表现层catch到exception之后,几乎只有一种处理方式:操作失败,请联系系统管理员。
然后系统管理员会查看系统的错误日志,解决这个问题。 transaction需要roll back操作的时候,try catch也是会使用的。但是随后必须将这个异常原样的throw出去。 微软的Enterprise Library 2005共有1319个代码文件。你们猜猜里面一共有多少个try?
答案是268。而且这268个try当中大概有一半是在Test project里面。而且剩下那一半中有很多try是只有fininally没有catch的。 现在还有谁觉得try是件很好玩的事情吗? 大家再猜猜在Enterprise Library 2005的1319个代码文件里面,派生的Exception class有多少个呢?
答案是9个,分别是:AuthorizationRuleNotFoundException SyntaxException UserNotFoundException MockDebugUtilsThrowsNonSecurityException MockDebugUtilsThrowsSecurityException LoggingException ConfigurationDependencyException ExceptionHandlingException MockException 这九个派生的exception class当中,有三个是在test project当中的。实际上类库里面的派生exception class只有六个。而且从我的眼光看来,即使是剩下的这六个派生exception class用得也是比较勉强的。 还有谁坚持派生大量的exception class是个好主意吗? 更多讨论参见:http://community.csdn.net/Expert/TopicView3.asp?id=4432545http://dev.csdn.net/article/81200.shtm