代码大全阅读随笔(六)

语句

本章以数据为中心的编程观点转到语句为中心的观点上。本章介绍最简单的控制流,即按照先后顺序放置语句和语句块。

尽管组织直线型代码是一个相对简单的任务,但代码结构上的一些微妙之处,还是对代码质量,正确性,可读性和可维护性带来影响。

作为一条普遍性原则,要让程序易于自上而下阅读,而不是让读者的目光跳来跳去,专家认为自上而下的阅读顺序对提高代码可读性最有帮助。简单的让控制流在运行时自上而下下地运行还不够。如果有人在阅读你的代码时候不得不搜索整个应用程序,以便找到所需信息,name就应该重新组织你的代码了。

把相关的语句组织在一起

顺序语句要点:

组织直线型代码的最主要的远侧是按照依赖关系进行排列。

可以用更好的子程序名,参数列表,注释,以及如果代码足够重要,内务管理变量来让依赖关系变得更加明显。

如果代码之间乜有顺序依赖关系,那就设法使相关的语句尽可能接近。

条件语句

让If子句后面跟随一个有意义的语句,禁止使用空语句

检查if和else子句是不是弄反了,程序中百分之五十错误,来自于条件写反。

在使用if-then-else串时候,利用布尔函数简化复杂的检测。把最常见的情况放到前面,确保所有的情况都考虑到了。

一般而言,那些执行完一个Case之后又执行到另外一个case的代码,在修改时候很容易发生错误,这种代码就应该避免。

条件语句要点:

对于简单的if-else语句,请注意if子句和else子句的顺序,特别是用它处理大量的错误时候,要确认正常情况是清晰的。

对于使用if-then-else语句串和case语句,选择一个最有利于阅读的排序。

为了捕获错误,可以使用case语句中的default子句(默认子句),或者使用if-then-else语句串中最后那个else子句。

各种控制结构并不是生来平等的,要给每个部分进行适合排序。

相关推荐
wujian83112 小时前
怎么用千问生成word文档:从「格式崩」到「一键过」,AI导出鸭打通最后半厘米
人工智能·ai·c#·word·豆包·deepseek·ai导出鸭
zlinear数据采集卡3 小时前
D223上位机C#开发实战:从帧解析到波形显示的完整实现
开发语言·arm开发·嵌入式硬件·fpga开发·开源·c#
唐青枫4 小时前
别把 ImmutableArray 当成只读 List:C#.NET 不可变数组深入详解
c#·.net
zlinear数据采集卡7 小时前
D223 ADC数据处理流水线:从原始采样值到工程单位的完整转换链
开发语言·arm开发·嵌入式硬件·fpga开发·开源·c#
花落人散处10 小时前
CDiskClean 开发历程 —— 文件清理_目录树解析实现方案参考
c#
离陌在学C#10 小时前
C# 泛型:从基础到高级应用
开发语言·c#
Vertira11 小时前
C# 与 OpencvSharp 编程[基础目录]
c#
格林威13 小时前
多相机并行采图最佳实践:Task.WhenAll + 异常处理 + 资源释放
开发语言·人工智能·数码相机·计算机视觉·c#·视觉检测·机器视觉
yuhulkjv33521 小时前
Claude表格复制到word不再崩溃,AI导出鸭批量导出+格式无损一键搞定
人工智能·ai·c#·word·ai导出鸭