度娘的C语言编程规范很多,大多相同,近几年的工作经验,在已有基础上增加如下规范,可以使得C语言代码更加简洁、易读、高效:
编程规范:
1、函数入口进行参数校验,小概率事件优先检查以不影响主流程处理,防止出现多层嵌套
2、变量申请统一放在函数开头
3、超过5个以上条件判断,采用表驱动实现
3、函数主要功能部分占函数的80%,日志、命令行记录最多占20%
模块设计:
1、模块设计满足高内聚、低耦合;最好不要直接访问外部模块数据;可以考虑采用消息驱动、事件驱动方式
2、消息驱动:通过已有平台提供的消息接口实现
3、事件驱动:模块A发布一个事件、通过事件驱动器、驱动模块B\C\D进行响应驱动
---- 事件驱动器:分为事件响应注册、事情发布驱动、事件响应调度
---- 事件发布驱动:事件驱动器对所有模块开发的一个发布事件接口,函数参数包括发布事件类型,如事件(event_type)、发布事件变化内容(event_para)
---- 事件响应调度:在事件发布驱动函数中实现对初始化时注册的响应调度处理