Chinaunix首页 | 论坛 | 博客
  • 博客访问: 15198766
  • 博文数量: 7460
  • 博客积分: 10434
  • 博客等级: 上将
  • 技术积分: 78178
  • 用 户 组: 普通用户
  • 注册时间: 2008-03-02 22:54
文章分类

全部博文(7460)

文章存档

2011年(1)

2009年(669)

2008年(6790)

分类: C/C++

2008-05-30 18:29:32

1.前言
C++项目中如果代码层次结构不好,非常容易变得难以维护。对于规模较大的项目而言,必须将整个项目划分成若干模块进行开发。
2.模块
模块包括可执行文件,动态库和静态库。
2.1应用层 
最上层为应用层,表现为可执行文件。
本层代码应主要进行界面控制,尽量不要涉及复杂逻辑。
2.2动态库层
动态库层作为逻辑模块的主体。采用动态库的好处是将复杂应用拆分成可以独立分发的子模块,便于单独管理。
使用动态库极易陷入动态库地狱(dll hell),因此应设法避免动态库直接的交叉依赖。原则上我公司开发的动态库,只能依赖于内核层动态库,或第三方动态库。应用层动态库直接不可以相互依赖。

鉴于上述动态库问题,动态库层在实际开发中尽可能少包含源代码,只包含导出函数列表。函数实现由静态库承担。
2.3静态库层
静态库是真正的模块层,是代码重用的基本单元。代码通过分组,直接编译成静态库,供其他层使用。
阅读(470) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~