c ++ 2软件,相同型号的不同视图和控制器

时间:2013-09-29 13:41:35

标签: c++ model-view-controller architecture layer core

我正在寻找一种优雅而实用的方法,可以在两个不同的程序之间共享模型,而无需单独编译它们。

我正在为同一个客户开发2个不同的软件。两者都以不同的方式共享相同的功能(卷填充优化)。但是用户界面既沉重又不同,因此为了清晰起见,我希望将它们分成两个不同的软件。

但是为了重用代码并使其易于维护,我希望建立一个类似核心的架构和每个软件的两个独立/专用层。

我想创建一个.dll或.so,两个应用程序都会共享它但我在Linux上开发并且客户正在使用Windows,所以我觉得以这种方式移植应用程序非常繁重。 (我没有任何运行Windows的计算机,所以我要去晚一个端口)

我还想过创建一个命令行程序作为核心,并在运行软件时通过shell调用它,但这似乎不可能以便携的方式进行。

有没有一种简单易用的方法(就像在python中导入模块一样)我在c ++中找不到? 或者如果没有,最好是使用共享库还是编译两个包含核心的软件?

1 个答案:

答案 0 :(得分:2)

“编译包含核心的两个软件” - 从开发人员的角度来看,为了方便起见,首选。

如果你真的想使用一段编译的跨平台代码,你很可能必须写一个c风格的dll。