重新组织用于内存和外部依赖关系管理的C ++代码

时间:2011-01-18 11:13:42

标签: c++ memory dependencies code-organization

我有一个相当大的软件,我在过去10个月里一直在开发。它是一个商业应用程序,因此从一开始(并且由于非编程要求),开发一直更侧重于提供新功能而不是构建一个健壮的系统。

现在我们处于某个阶段,我们想要在应用程序中添加以下功能:

  • 自己的内存管理系统,包括内存泄漏检测。
  • 尽可能简单地替换标准库(比方说:有人会使用我们的代码并希望使用自己的字符串实现而不是std :: string)
  • 准备好几个版本。主要是“调试”版本,其中包括内存泄漏检测,断言和其他“安全”技术,以及“发布”版本,没有所有这些消耗程序。

关键是我可以在那里找到手册来完成这些任务中的每一项,但我担心每一项任务都会让我分开一些代码。换句话说,我需要的是一个代码/标题组织结构(也就是一个好的设计),它允许我继续执行这些任务(以及未来的其他任务)。

所以问题是,您是否知道任何参考或在线书籍/手册,我可以找到组织代码的指南,以完成所有这些功能?有什么建议吗?

非常感谢提前。

最好的问候。

修改

实际上我们正在开发一个应用程序和一个库......但在这种情况下我们要修改的部分是库,所以Fred Nurk你是对的,它是

关于IDE,我们正在使用Microsoft Visual Studio。该平台,我们正在Windows上开发,但该库旨在跨平台工作(它与游戏编程相关,因此该库也可用于控制台和移动设备)。

2 个答案:

答案 0 :(得分:4)

听起来你打算进行重大的重构,在这种情况下你应该阅读Martin Fowler的Refactoring: Improving the Design of Existing Code

答案 1 :(得分:0)

使用std :: string并强制使用它是合理的,但你不应该假设其他人将使用与你自己相同的STL实现。

有很多方法可以通过定义良好的界面来实现这一目标。

关于这个主题的书籍,Martin Fowler可能是该部门最着名的“大师”: