最近开始接手项目组的开发管理工作,项目组开发的产品一期功能基本开发完成,进入内部测试及小渠道发布阶段,然而产品的稳定性还存在很大问题。
先做一下背景介绍,项目组开发的是一款面向C端的互联刚产品,运行操作系统为windows。整个项目使用c++开发,总体代码量大概在数十万行。
c++是一门很复杂的语言,有很多强大的特性,然而当用其开发一款商业产品时,这些特性可能会带来麻烦。所以当设计c++的使用规范时,更多的是对其做减法。
本文的规范针对VC++开发环境,开发工具为Visual Studio。
文件系统目录规范
一款完整的商业产品开发通常会涉及到很多模块,这其中包括可执行程序(.exe),项目组开发的库(静态库或动态库),第三方的库(静态库或动态库),测试程序,这么多的模块和代码,需要一个良好组织的目录结够。
这里假设项目名称为XXProject
- XXProject
- XXProject.sln
- Bin
- Debug
- Release
- TestBin
- Debug
- Release
- Src
- Document
其中Bin存放需要发布的可执行程序,TestBin存放测试程序的可执行文件,Src存放项目的工程文件和源代码,Document存放项目相关的开发文档(如项目说明,代码规范等)。
接下来假设项目包括如下工程:XXMain(发布的主程序),XXUpdate(升级程序),XXSdk(自己开发的基础库),XXThird(第三方库), XXTest(测试程序)
- Src
- XXMain
- XXMain.vcxproy
- code文件
- XXUpdate
- XXUpdate.vcxproy
- code文件
- XXTest
- XXTest.vcxproy
- code文件
- XXMain