初级程序员提升代码质量---探讨博客第一节之 ···········“if判断语句中让不符合的返回比让符合的进入更好”
发布日期:2021-05-12 15:54:50 浏览次数:12 分类:技术文章

本文共 1121 字,大约阅读时间需要 3 分钟。

看过了clean code,感觉收获很大,但是仔细一想又不知道收获具体在什么地方,是自己写的代码更抽象,可维护性更高了?还是代码更简洁了?好像都没有。

那则么办呢,中国人都是务实主义,那么就让我们针对现实,针对特定的,常用的代码结构,进行具体的讨论吧,只要写代码的时候,看到好的代码,就直接写下来讨论

第一:if语句的嵌套,先看下面两个代码:

代码一

if (index >= allPoints.Length) return;        transform.Translate((allPoints[index].position - transform.position).normalized * Time.deltaTime * EnemySpeed, Space.World);        if(Vector3.Distance(transform.position , allPoints[index].position) < 0.1f)        {
index++; }

代码二

if (index < allPoints.Length)        {
transform.Translate((allPoints[index].position - transform.position).normalized * Time.deltaTime * EnemySpeed, Space.World); if (Vector3.Distance(transform.position, allPoints[index].position) < 0.1f) {
index++; } }

这两句在代码执行效果和效率上都是一样的,

if (index >= allPoints.Length) return;//与 if (index < allPoints.Length) {
}//效果上一样

但哪一种代码更好呢,显然是第一种,原因如下

  • 可读性好,容易理解,这点其实两个差不多
  • 可扩展性好,为什么?因为可扩展性不仅是解耦好,更是代码更简洁,你看第一种,基本上没有if的·嵌套,而第二种已经有了一层if嵌套,要知道,一般嵌套个3层就已经很复杂了,但是第一中,直接把不符合的返回,而非让符合的进入,减少了嵌套,增加了代码的可读性,可扩展性

所以同学们,从这点我们学到,if判断语句中让不符合的返回让符合的进入更好

转载地址:https://blog.csdn.net/qq_40666620/article/details/102024007 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:C#脚本中的public变量不能被unity面板识别
下一篇:unity找不到报错界面

发表评论

最新留言

很好
[***.229.124.182]2024年04月05日 05时23分55秒

关于作者

    喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!

推荐文章

[汇编语言] 带有颜色的字符串显示(hello world 级别程序) 2019-04-27
[增删改查] Python 之使用 Django + LayUI 做后台管理 2021-06-30
Docker 镜像容器 之 导出导入、上传镜像到 DockerHub 上、Nexus私库 的引入 2021-06-30
centos7 下将 Django2.0 项目部署到 阿里云 上(uwsgi3 +Nginx ) 2021-06-30
前后端分离 SpringBoot + SpringSecurity 权限解决方案 2021-06-30
前后端分离 SpringBoot + SpringSecurity + JWT + RBAC 实现用户无状态请求验证 2021-06-30
[Python爬虫] 使用 Beautiful Soup 4 快速爬取所需的网页信息 2021-06-30
在 Centos7 下使用 Docker 快速搭建 Hadoop 集群 2021-06-30
Python web 框架 Flask 蓝图的正确使用姿势 2021-06-30
领扣LintCode算法问题答案-1053. 至少是其他数字两倍的最大数 2021-06-30
领扣LintCode算法问题答案-1054. 最少费用的爬台阶方法 2021-06-30
领扣LintCode算法问题答案-1056. 请找出大于目标的最小字母 2021-06-30
领扣LintCode算法问题答案-1062. 洪水填充 2021-06-30
领扣LintCode算法问题答案-1068. 寻找数组的中心索引 2021-06-30
领扣LintCode算法问题答案-1071. 词典中最长的单词 2021-06-30
领扣LintCode算法问题答案-1078. 数组的度 2021-06-30
领扣LintCode算法问题答案-1079. 连续子串计数 2021-06-30
领扣LintCode算法问题答案-1080. 最大的岛 2021-06-30
【精】LintCode领扣算法问题答案:1082. 员工的重要度 2021-06-30
领扣LintCode算法问题答案-1085. 最长的单一路径 2021-06-30