- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
业务监控及风险预警项目后台开发规范
杨巍
yangwei@
目录
整体介绍
C/C++开发规范
Makefile
Linux静态库和动态库
DB2嵌入C
源码目录
数据处理服务器主要接收从交易监控系统发送来的网络报文,并进行重组还
原成原始交易报文数据;预警分析服务器对接收到的报文分组后根据定制的
入库规则和预警规则进行入库和报警匹配处理 ,最后存储到相应的库表中,
供前台报警信息读取。
后台程序总体逻辑框架
目录
整体介绍
C++开发规范
Makefile
Linux静态库和动态库
DB2嵌入C开发
源码目录
头文件
规则1 每一个.c/.cpp文件应有一个同名的.h文件,用于声明需要对外公开的接口。
规则2 .c/.cpp/.h文件禁止包含用不到的头文件。
规则3 总是编写内部#include保护符(#define 保护)。
#ifndef __TIMER_H__
#define __TIMER_H__
…
#end if //end of define __TIMER_H__
规则4 禁止头文件中定义变量。
规则5 只能通过包含头文件方式使用其它.c/.cpp提供的接口,禁止在.c/.cpp中通过extern的方式使用外部函数接口、变量。
函数
原则1 一个函数完成一件功能。
原则2 重复代码应该尽可能提炼成函数。
原则3 尽量少用函数指针。
规则1 对函数的错误返回码要全面处理。
规则2 废弃代码要及时清除。
规则3 函数不变参数使用const。
规则4 内联函数小于10行。
规则5 使用内联函数代替函数宏。
template class TYPE
Inline TYPE max(TYPE x, TYPE y)
{
return (x y) ? x : y;
}
替换
#define MAX(x, y) ((x) (y) ? (x) : (y))
标识符
规则1 项目组保持统一命名风格
char szSql[1024];
int nLen;
double dCharge;
char *pAddress;
string strName;
class CObject;
struct TEmployee;
规则2 全局变量应增加“g_”前缀。
规则3 静态变量应增加“s_”前缀。
规则4 对于数值或者字符串等常量的宏定义,采用全大写字母,单词之间加下划线方式命名。
规则5 函数命名应以函数要执行的动作命名,一般采用动词或者动词加名词的结构。
int GetCurrentDate(…);
注释
规则1 修改代码时,维护代码周边的所有注释,保证注释与代码的一致性。
规则2 头文件头部应进行注释,注释必须列出:版权说明、版本号、生成日期、作者、功能说明。
规则3 注释应放在其代码上方相邻位置或右方,不可放在下面。
规则4 对于switch语句下的case语句,如果因为特殊情况需要处理完一个 case后进入下一个case处理,必须在该case语句处理完、下一个case语句前加上明确注释。
规则5 全局变量要有详细注释,包括功能、取值范围等。
规则6 宏定义要有明确的注释。
排版与风格
规则1 程序块采用缩进风格编写,每级缩进4个空格。
规则2 相对独立的程序块之间、变量说明之后必须加空格。
规则3 一行只写一条语句。
规则4 if、for、do、while、case、switch、default等语句独占一行。
规则5 if、for、while等与后面的括号间应加空格,使关键字更为突出、明显。
目录
整体介绍
C/C++开发规范
Makefile
Linux静态库和动态库
DB2嵌入C开发
源码目录
什么是Makefile?
Makefile是整个工程的编译规则。一个工程中的源文件不计
数,Makefile 定义了一系列的规则来指定每个文件的编译
规则,甚至更复杂的功能操作,因为Makefile就像一个
Shell脚本一样,其中也可以执行操作系统的命令。
Makefile带来的好处就是“自动化编译”,make命令执行,
整个工程完全自动编译,极大的提高了软件开发的效率。
编译过程
#include stdio.h
int main(void)
{
printf(“hello world\n”);
return 0;
}
Makefile示例
one: one.o two.o three.o g++ -o one one.o two.o three.o
one.o: one.cpp one.h
g++ -c one.cpp
two.o: two.c two.h
g++ -c two.cpp
three.o: three.cpp three.h
g++ -c three.cpp
文档评论(0)