如何写出高质量的代码

3种错误处理的方法

在写代码之前,要考虑单元测试。如果能够设计全面的单元测试用例并在代码中体现出来,那么写出的代码自然也就是完整正确的了。通常我们从功能测试边界测试负面测试三方面来设计测试用例。
其中,负面测试是指当输入不符合要求的时候,程序还能做出合理的错误处理。

函数返回值

函数用返回值来告知调用者是否出错,如很多Windows的API。其缺点是使用不便。

全局变量

设置一个全局变量,当发生错误时改变该变量的值,其缺点是可能调用者会忘记检查该变量。

异常

当函数运行出错时,抛出一个异常。我们能显式地划分程序正常运行的代码块(try模块)和处理异常的代码块(catch模块),逻辑比较清晰。

代码的鲁棒性

鲁棒性对软件开发非常重要,提高代码的鲁棒性的有效途径是进行防御性编程,它是指一种编程习惯,是指预见在什么地方可能会出现问题,并为这些可能出现的问题制定处理方式。比如试图打开文件时发现文件不存在,我们可以提示用户检查文件名和路径;当服务器连接不上时,我们可以试图连接备用服务器等。
在面试中,最简单也最实用的防御性编程就是在函数入口添加代码以验证用户输入的参数是否符合要求

写代码时应该考虑到的细节

小数判断相等

由于计算机中的小数表示存在精度限制,所以判断两个小数是否相等不能用普通的if(a==b),而是应该用if( abs(a-b)<1e-6 )

大数问题

当处理整数时,要考虑到如果该整数特别大应该怎么办?这时候应该用string来表示和处理。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值