- 主题:异常这玩意儿当初是哪个脑残发明出来的?
你说的污染性,从另一个角度说正好就是顶层设计啊,
也就是事先规划好各个模块怎么抛异常、怎么处理异常,那样还怕什么污染呢,兵来将挡水来土掩。
而且也不是污染了,因为所有模块和人都知道会来点啥。
返回值就是适合局部
人类直觉通常是局部的,也符合没有人做全局设计时,单个码农自己搞定局部模块、函数的场景,但不一定是全局最优的
【 在 speedboy2998 的大作中提到: 】
: 问题是这玩意儿有污染性啊。如果能够内部消化不污染到外面来,我觉得没问题。
: 异常太有悖于人类正常思维模式。
: 用返回值判断,更天然地符合人类直觉。
: ...................
--
FROM 221.218.161.*
我说的污染性是:
我不想使用异常,但是用到的第三方库使用了异常,,我就不得不在调用他接口的时候瞿捕获异常。、
【 在 z16166 的大作中提到: 】
: 你说的污染性,从另一个角度说正好就是顶层设计啊,
: 也就是事先规划好各个模块怎么抛异常、怎么处理异常,那样还怕什么污染呢,兵来将挡水来土掩。
: 而且也不是污染了,因为所有模块和人都知道会来点啥。
: ...................
--
FROM 218.76.62.*
这有啥问题?
你调用第三方库,要么捕获异常,要么处理返回码,不是一样的?
又不需要在调用第三方库的每个层级上都捕获它的异常(如果真这么做的话,算是误用 + 滥用,哈哈),也就是通常在第一层就做了隔离。
还有种情况是,你的代码到处直接调用抛异常的库,而不是对其封装一下,哈哈
【 在 speedboy2998 的大作中提到: 】
: 我说的污染性是:
: 我不想使用异常,但是用到的第三方库使用了异常,,我就不得不在调用他接口的时候瞿捕获异常。、
:
--
修改:z16166 FROM 221.218.161.*
FROM 221.218.161.*
导致我不得不用异常,污染了我。
【 在 z16166 的大作中提到: 】
: 这有啥问题?
: 你调用第三方库,要么捕获异常,要么处理返回码,不是一样的?
: 又不需要在调用第三方库的每个层级上都捕获它的异常(如果真这么做的话,算是误用 + 滥用,哈哈),也就是通常在第一层就做了隔离。
: ...................
--
FROM 218.76.62.*
你可以换个库,或者自己撸一个库,这样就不用觉得自己被污染了、受委屈了
【 在 speedboy2998 的大作中提到: 】
: 导致我不得不用异常,污染了我。
:
--
FROM 221.218.161.*
这咋可能
【 在 z16166 的大作中提到: 】
: 你可以换个库,或者自己撸一个库,这样就不用觉得自己被污染了、受委屈了
:
--
FROM 218.76.62.*
这应该属于你自己精神洁癖了哈哈。
得为自己的自由买单啊。
【 在 speedboy2998 的大作中提到: 】
: 导致我不得不用异常,污染了我。
--
修改:hgoldfish FROM 120.37.21.*
FROM 120.37.21.*
这不可能,那可能做的就是改变自己的观念,做到不再觉得用异常就是自己被污染了,哈哈
用返回码何尝不是一种被“污染”,各种库定义各种返回码
【 在 speedboy2998 的大作中提到: 】
: 这咋可能
:
--
FROM 221.218.161.*
确实。处理错误都是脏活累活。觉得烦很正常。
每个语言和软件系统里面总有一些这种看了觉得烦的东东。
【 在 z16166 的大作中提到: 】
: 这不可能,那可能做的就是改变自己的观念,做到不再觉得用异常就是自己被污染了,哈哈
: 用返回码何尝不是一种被“污染”,各种库定义各种返回码
--
FROM 120.37.21.*
现实是抛异常的解决不了,别人也不会去解决,干脆重新来省事
【 在 speedboy2998 的大作中提到: 】
:
: 你 try catch 一般也是逐级吧, 总不能像下面这样:
:
: int main() { try { dosomthing(); } catch() { printf("坏菜了"); } }
:
#发自zSMTH-v-@motorola XT2153-1
--
FROM 117.147.47.*