大规模的C++项目代码层次结构

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

鉴于上述动态库问题,动态库层在实际开发中尽可能少包含源代码,只包含导出函数列表。函数实现由静态库承担。
2.3静态库层
静态库是真正的模块层,是代码重用的基本单元。代码通过分组,直接编译成静态库,供其他层使用。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

妈妈爱编程

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值