项目应该在多大程度上相互独立?
我有一个非常大的 Visual Studio 解决方案,其中所有项目都相互依赖。我无法从解决方案中获取单个项目并将其添加到另一台计算机上的另一个解决方案中,因为它们都相互关联。
我做的事情正确吗?
例如;
考虑一下我的这三个项目(磁盘文件、数据转换器和数学 - .h 和 .cpp 文件对是 C++ 类;我将通过它们各自的名称提及它们):
The Solution
|
|---- Disk File
| |
| |---- BinaryFile.h, BinaryFile.cpp
| |---- TextFile.h, TextFile.cpp
|
|---- Data Converter
| |
| |---- Utf8.h, Utf8.cpp
| |---- XmlParser.h, XmlParser.cpp
| |---- StringFormatter.h, StringFormatter.cpp
|
|---- Math
|
|---- Plotter2D.h, Plotter2D.cpp
|---- Matrix.h, Matrix.cpp
TextFile
用于Utf8
字符编码。这使得Disk File
依赖于Data Converter
.XmlParser
使用TextFile
. 这使得Data Converter
依赖于Disk File
.Plotter2D
用于TextFile
转储一些数据以与外部软件一起使用,并在其方法Matrix
中使用一些字符串格式化工具。::ToString()
这使得Math
依赖于Disk File
和Data Converter
。
这只是几个类之间的依赖关系的一个例子。事实上,我的解决方案中有更多文件。这是一团乱麻的代码依赖。
我将和我的一个朋友开始一个项目。他在他的解决方案中需要我的Math
项目。但是要让他适应他自己的解决方案并不容易,因为它会给这些依赖项带来很多编译器错误。
这种依赖量正常吗?我做得对吗?我在每个需要它们的项目中保留所有公共文件的副本怎么样(这可能很愚蠢,我只是在问它)?
我需要你的建议。