写出优雅的代码

本文探讨了写出优雅代码的重要性,列举了七个关键点:代码格式化、让判断条件做真正的选择、简化的判断条件、避免复制粘贴、模块化代码、谨慎声明变量以及封装固定值。通过实例解析,阐述如何提升代码的可读性和可维护性,以减少后期维护的复杂度和提高团队效率。
摘要由CSDN通过智能技术生成

《代码整洁之道》一书中说:当你的代码在做 Code Review 时,审查者要是愤怒地吼道:“What the fuck, is this shit?”、“Dude, What the fuck!”等言辞激烈的词语,那说明你写的代码是 Bad Code,如果审查者只是漫不经心的吐出几个:“What the fuck?”,那说明你写的是 Good Code。衡量代码质量的唯一标准就是每分钟骂出“WTF”的频率。

代码不规范会带来很多负面影响,比如团队之间如果代码不统一规范,对审查阅读都会不方便,后期的维护复杂度也会增加,降低团队效率。另外,不规范的代码可能在不小心中埋下bug,比如参数、异常处理、日志等不规范都会让你背锅。优雅的代码读起来让人赏心悦目、通俗易懂,对后期重构也大有帮助。比如如下一段代码,看的你感觉如何?

if(db.Next()) {
    return true;
} else {
    return false;
}

这段代码不是我为了文章而编出来的,而是在工作中经常看到,如果这段代码改成如下,效果显而易见。

return db.Next();

关于如何写出优雅的代码,我有以下看法:

1、代码格式化

如果不格式化,很多字符符号之间连空格都没有,好不容易看到一个空格确是连续三四个空格。格式化代码使阅读更加方便,后期修改代码更容易发现修改处。

记住:代码要格式化!

2、让判断条件做真正的选择

if ("0000".equals(retCode)) {
    sendMsg("0000", "success", result);
} else {
    sendMsg("0000", "fail", result);
}

如上一段代码,if/else里面调用的方法一样,真正不一样的仅仅一个参数,我们可以简单优化为如下格式:

String msg = "0000".equals(retCode) ? "success" : "fail";
sendMsg("0000", msg, result);

这段代码中,条件判断真正有影响的区别是获取消息内容,而不是发送消息方法,所以我们要让判断条件条件做真正的选择,将获取消息内容和发送消息方法分开。

这样消除了代码中的冗余,代码也更容易理解,同时未来也更容易扩展。如果未来retCode变量有更多的值返回需要判断,我们只需要调整消息获取相关代码即可,这种情况下封装一下消息获取的相关代码更好,如下:

<
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值