两个特性的概念

两个概念,最近算是刚刚弄清楚
1)容错性
2)健壮性
这两个概念,很容易搞混,不健壮能容错吗?容错能不健壮吗?
这就是汉语的歧义造成的,在架构语言里,这两个概念还是能分得比较清的。
容错是指当异常发生时能够恢复到正常的处理状态的能力,例如,一个函数,当输入参数是NULL时,被自动当成空串来处理,这种设计,就是具备了容错性;容错性好的设计,可以让访问者很放心的调用,不必在调用前,对参数作过多的检测。这方面来说,所谓容错,就是不易错。
健壮性是指当异常发生的时候,系统能够承受,不会出现大的问题,同样以一个函数为例,当输入参数为NULL时,函数返回一个错误,并不接下来进行处理,不会因为空值导致系统down掉,这就是设计上考虑了健壮性。
对比一下,这两个概念,容错性强调一个系统对外的接口,而健壮性强调系统自身的实现。
理论上来说,java程序相对于c程序,健壮性是容易保证的,因为内存更容易控制,不容易产生内存垃圾;所有异常有捕获机制,外界容易得到反馈;但内存的溢出、cpu的过载,仍然是容易导致系统不够健壮的因素。
容错嘛,就是调用者犯了错误,能够容纳(谁不犯错?),至少给以反馈,告诉对方犯了错误,而不是接着去犯更大的错误。
健壮呢,就是对于各种的异常,都不能让系统产生大的损坏,仍然可以正常运行。
事实上,这两个特性,常常是互相依赖的,同时存在的。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值