如何让code变得更易读

简介: 如何让code变得更易读

从开始编码到现在,从没有意识去如何去写出更加规范,更加易读的代码,只是按照需求将某一功能进行实现。


下面是最近在网上搜索查看的一些通用的知识点,做一记录。


单一抽象层次


单一抽象层次是指一个函数或者方法中的所有操作处于相同层次。


其实说白了就是把复杂的东西,业务多的模块进行细小的在拆分。让其函数只做一件事。


下面这张图就可以说明这个单一层次。对复杂的模块再次进行拆分,整理。让思路更加清晰,不要把所有的业务逻辑写在堆积在一个方法中。


679140-20180604172848143-410527249.png

最小化缩进


其实这个是说在写业务逻辑代码中,在复杂的条件判断中,我们应该先对其进行否定判断,先排除其最有可能跳出的操作,接着在进行调用正常的功能模块。在if/else的判断中尤其重要,不要一味的把自己置身于复杂的功能模块中,这对于我们定位错误,解决bug有很大的帮助,这样我们就可以把焦点放在正确的代码上,不必要在一层一层的进行进行代码分析。



679140-20180604172849251-1542126364.png



解释:


1、针对头重脚轻的if/else,尽量早使用return返回,减少语句的嵌套。


2、合并分支,有些分支执行的内容是相同的,可以合并为一个。


3、扁平化,让负责的功能模块变得简单,易懂。


清晰表达式


优秀的代码不是越少越好的,而是理解它花的时间越少越好。记住,你写的代码不只是只运行一次,不只是你一个人看的。要写出大家都能看的懂的代码。


可读性基本定理----代码应当使别人理解它所需的时间最小化



679140-20180604172850955-1345451533.png



善用辅助类拆分


类的职责分配,对于类来说,它的作用毋庸置疑,它是一个抽象的具体存在,有时候它很简单,有时候又特别巨大,当它被你写的特别巨大的时候,你就要看看你自己那块是不是写的有问题。


这个时候就需要辅助类来帮助主类来分担一些细微,功能性不是很强的模块。

哪些模块应该交给辅助类来负责了?


1、不产生数据的函数;


2、不修改数据的函数;


3、有输入就有明确输出的函数;


4、不和外部对象交互的函数;


寄语:


  • 写出来的函数是要给人看的;


  • 理解函数所花的时间应该越短越好;


  • 优秀的代码都是后期修改出来的。


目录
相关文章
|
9月前
|
数据可视化 Linux 开发工具
10个极大提高开发效率的VS Code技巧
10个极大提高开发效率的VS Code技巧
|
3月前
|
C# 开发者
C# 一分钟浅谈:Code Contracts 与契约编程
【10月更文挑战第26天】本文介绍了 C# 中的 Code Contracts,这是一个强大的工具,用于通过契约编程增强代码的健壮性和可维护性。文章从基本概念入手,详细讲解了前置条件、后置条件和对象不变量的使用方法,并通过具体代码示例进行了说明。同时,文章还探讨了常见的问题和易错点,如忘记启用静态检查、过度依赖契约和性能影响,并提供了相应的解决建议。希望读者能通过本文更好地理解和应用 Code Contracts。
60 3
|
6月前
|
安全 Java 测试技术
code review 正确方式
code review 正确方式
109 1
|
8月前
|
Python
通过f-string编写简洁高效的Python格式化输出代码
Python 3.6中引入的f-string是Python中最常用的特征之一,它可以让我们编写更干净、更高效和更易于维护的代码,我们今天就由浅入深来详细介绍使用它的一些技巧。
507 4
|
8月前
|
算法 Python
Python3注释:让你的代码更清晰更易读
Python3注释:让你的代码更清晰更易读
|
Linux 程序员 C语言
Vs code写C语言代码配置(超详细超基础)
写在前面: 近期不是重新温习一下C语言吗,也给自己升级换代一下编辑器,最初我一直用Dev c++ 写的C语言,因为没想往深的学习C语言,也不会去写什么大的项目,所以这个编辑器也是可以用,但是目前认真学习,发现那个东西真的适合初学者,对于我这种懒人不适合,项目代码管理起来很麻烦,所以一气之下我直接鸟枪换炮,整个大家伙——vs,但是vs真的太大了,而且默认装在C盘,我这破电脑小内存扛不住,所以就研究了一下vs code,下面就本人安装经验给新学者讲解如何安装。
913 0
|
前端开发 C++
前端知识学习案例1vs code-安装vs code
前端知识学习案例1vs code-安装vs code
85 0
前端知识学习案例1vs code-安装vs code
|
存储 算法 搜索推荐
自从用了 Stream,代码更简洁优雅了!
自从用了 Stream,代码更简洁优雅了!
127 0
|
存储 开发工具 C++
VS Code|重新认识VS Code
VS Code|重新认识VS Code
309 0
VS Code|重新认识VS Code
|
前端开发 C++
#yyds干货盘点# 【Vs code工作记录三】设置Vs code格式化
#yyds干货盘点# 【Vs code工作记录三】设置Vs code格式化
195 0
#yyds干货盘点# 【Vs code工作记录三】设置Vs code格式化