代码大全阅读随笔(五)

数据初始化要点:

数据初始化过程很容易出错,所以请使用本章介绍的方法,来初始化数据,从而避免由于非预期的初始化值而造成的错误。

最小化变量作用域。

使用相同的变量的语句尽可能的集中在一起。

早期绑定会减少灵活性,但有助于减少复杂度。晚期绑定则相反。

把每个变量用于唯一的用途。

变量命名要点:

好的变量名是可以提高程序可读性的一项关键要素。对特殊种类的变量,比如循环下标和状态变量,需要加以特殊考虑。

名字要尽可能的具体。那些太模糊或者太通用的以至于能够用于多种目的的名字通常都是不太好的。

命名规则应该能够区分部分数据,类数据和全局数据。他们应当还可以区分类型名称,常量,枚举值类型名称名字和变量名。

无论做那种类类型项目,你都应该采用某种便令命名规则。你所采用的的规则种类取决于你的程序规模,以及项目人员个数。

现代编程语言很少需要用到缩写,如果你真的要用使用缩写,请使用项目缩写词典或者标准前缀来帮助理解缩写。

代码阅读次数要远远多于编写的次数。确保你所取得名字更加侧重于阅读方便而不是编码方便。

数据类型要点:

使用特定的数据类型就意味着要记住适用于各个类型的很多独立的原则。

如果你的语言支持,创建自定义类型会使得你的程序更容易修改,并更具有自白的描述性。

当你使用typedef或者其他等价方式创建一个简单类型的时候,考虑是否跟应该创建一个新的类。

全局变量命名要点:

结构体可以使得程序更加简单,更容易理解,以及更容易维护。

每当你打算使用结构体的时候,考虑采用类会不会工作的更好。

指针很容易出错,访问器子程序或类以及防御式编程实践来保护自己代码

避免使用全局变量,不只是因为他们很危险,还是因为你可以用其他很好的方式来取代他们。

如果你不得不使用全局变量,那么就通过访问器子程序来使用它。访问器子程序能为你带来全局变量所能带来的一切有点,还有一些额外好处。

相关推荐
雪飞鸿4 小时前
ArrayPoolWrapper简洁、安全的ArrayPool
c#·.net·.net core·原创
海盗12344 小时前
C#上位机开发-S7协议通信
开发语言·c#
FeBaby4 小时前
ReentrantLock 与 synchronized 底层实现对比图解
开发语言·c#
烟话66 小时前
C# 内存机制详解:值类型、引用类型与 String 的不可变性
java·jvm·c#
我是唐青枫6 小时前
C#.NET MemoryMarshal 深入解析:零拷贝内存重解释、二进制读写与使用边界
c#·.net
susan花雨7 小时前
C#异步并行处理的用法
c#
weixin_520649878 小时前
Winform创建与启动
开发语言·c#
武藤一雄8 小时前
WPF中逻辑树(Logical Tree)与可视化树(Visual Tree)到底是什么
microsoft·c#·.net·wpf·.netcore
周杰伦fans8 小时前
深入 C# 匿名类型:从 `new { Ask = ask }` 说起
开发语言·c#