如何写好代码
关于模块
模块是程序的基本组成单位,后缀名为.py .go .c的文件就是一个模块。
- 每个模块需要有明确的功能
- 需要符合紧内聚,松耦合
切分模块的方法
数据类模块:完成对数据的封装线
封装通过模块内部变量或类的内部变量实现
过程类模块:本身不含数据
可以从文件中读取数据执行一些相关的操作
可以调用其他数据类模块或过程类模块
编写程序时要减少模块间的耦合
关于类和函数
类和函数是两个不同的问题,当遇见和类的成员变量无关的函数时,可以将该函数抽出来,作为一个独立的函数使用,这样能方便将来的复用。
关于面向对象
面向对象的本质是封装,要求写程序的过程中应该从数据的角度开始想问题,不是从执行过程的角度开始想问题。
在系统中谨慎的使用多态和继承。如果一个系统中类的继承超过三层,那么这个系统的复杂度很难把握。
关于模块内部的组成
文件头
- 模块的说明 模块功能的简要说明
- 修改历史 时间修改人和修改内容
关于函数
函数描述的三要素
- 功能
- 传入参数
- 返回值
函数的规模要足够短小
推荐一种函数的书写方式
单入口,单出口
关于代码注释
要重视代码注释,一般先写注释
关于代码块
把代码的段落分清楚。空行和空格
关于命名
在名字中加入下划线、驼峰等
关于系统的运营
尽可能暴露多的可监控接口。
在设计足够的状态记录。