编码规范养成系列---生产效率提高篇

1.在对立关系中事先确定侧重于哪一方

1.1 程序里的对立关系?

  • 对立关系是指,选择两个策略性目标之一,则无法追求另一个目标的实现。eg:一旦决定采用值传递的方法保障程序安全性,就无法同时采用引用传递的方法追求程序性能的优化。
  • 总之,鱼和熊掌不可兼得,实际工作过程中,安全性、性能、生产效率等,不同项目侧重点方向也不同,但往往处于一个平衡的位置。
  • 因此,项目经理、系统架构师、系统分析师、程序员、码农等应该逐一列举处于对立关系的各个对象,从中选择更希望侧重的一个方面,并在项目流程中始终坚持自己的选择。

2、慎重采用最新工具

2.1 多了解最新地开发工具

  • 优秀的开发工具很多,不同的IDE可能导致生产效率出现明显差异。
  • 我们应该始终以挑剔的眼光看待工具,寻找更好的扩展应用、更好的开发工具,并毫不犹豫地将其应用到日常工作中。

2.2 欲戴皇冠,必承其重

  • 有时候新的开发工具会起到反作用。
  • 锋利的斧子固然有用,但要首先具备挥动斧子的力量。

3、记住所有标准库

  • 要想成为经验丰富、工作效率高的程序员,至少应该牢记标准库。
  • 具体下,就是牢记标准函数库提供的各函数名、使用形式、使用示例等。
  • 同时,最好还能再记住一两个与自己业务关联度高的常用库。

4、最大程度划分模块

  • 积木很奇妙,相互配合、排列,能组成千奇百怪的形状。
  • 程序的一个个函数块,相互配合、排列组成,能组成各种系统。
  • 模块划分越细,可以组成的程序数目越多
  • 由此可见,在设计系统时,应该最大限度地实现模块化
  • 假设某项目最初是由5各左右的程序单元组成的软件系统,但根据划分模块原则,应该将其拆分为上百个模块。这样今后有新的需求时,只用对其中一些模块重新修改、拼接就好。
  • 对于大规模项目,无论提高生产率还是对新需求的应变速度,都可以收到出人意料的显著效果。

5、 明确区分术语

  • 开发多人参与的项目前,应该先统一术语。可以再黑板上将可能用到的术语写下来,或者撰写一本术语指南,或者直接购买一本术语词典。这样方便沟通。

  • 下面举个反例,该语句声明了什么????

struct newDataType {
    
    
	char *a;
	char *b;
};
  • 结构体?结构型?结构?
  • 应该统一术语

6、明确区分结构体、枚举体、共用体

术语 定义
1.结构体 包含2和3
2.结构体数据类型 用struct声明的数据类型,简称为结构型
3.结构型变量 用于称呼结构体数据类型声明的变量
4.枚举体 包括5和6
5.枚举体数据类型 用enum声明的数据类型,简称为枚举型
6.枚举体变量 枚举体类型的变量
7.共用体 包括8和9
8.共用体数据类型 用union声明的数据类型,简称共用型
9.共用型变量 共用体数据类型定义的变量

7、明确区分对象、类、实例

术语 定义
对象 包括类和实例
按照生成对象的语法定义的数据类型,相当于实例的设计图
实例 根据类生成的实体。虽然经常将实例成为对象,但二者其实是不同的概念,应区分对待。比较好的方法是用"实体"代替"对象"这一称呼,或直接称其为实例。

8、小结

码农是译者,程序员是作家。就像译者和作家一样,码农和程序员都应该对这些规则保持敏感。

猜你喜欢

转载自blog.csdn.net/weixin_43722052/article/details/110921375