代码大全阅读随笔(五)

数据初始化要点:

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

最小化变量作用域。

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

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

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

变量命名要点:

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

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

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

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

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

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

数据类型要点:

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

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

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

全局变量命名要点:

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

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

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

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

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

相关推荐
fujisheng66113 小时前
Unity UI 生命周期状态机:处理 Covered、异步竞态与事务回滚
c#·unity3d
leoZ23118 小时前
第 8 篇:与 AI 协作的工作流 + 完整案例
前端·人工智能·神经网络·自然语言处理·性能优化·c#·php
fujisheng66120 小时前
Unity 异步 UI 实战:取消令牌、版本校验与旧句柄隔离
c#·unity3d
额鹅恶饿呃20 小时前
随着CentOS官方停服的时间越来越久,大量仍在使用CentOS7的企业和运维从业者
java·python·算法·c#·ruby
乌药ice20 小时前
c#中一个多线程安全的HashSet
开发语言·c#
lfSeanDragon21 小时前
数据结构-前缀树(Trie)
开发语言·c#
张人玉21 小时前
基于 C# WinForms + .NET 8 + SQLite + TCP Socket 的多连接通讯调试工具——TCP通讯助手(TcpAssistant)
tcp/ip·sqlite·c#·.net
mldong1 天前
C# 开发者也有自己的轻量工作流引擎了:NuGet 装包,5 分钟跑通一条审批流
后端·c#·.net
samble1 天前
从零搭建工业控制系统(二十二):线程安全与并发控制
c#·wpf·并发·mvvm·线程安全·工业控制
UIU1141 天前
scanf与cout的误区:探究其内部的机制
c++·学习·c#·scanf