你如何管理所有做类似事情的多个程序?

时间:2010-08-16 00:18:47

标签: web-applications project-management

我有一个我选择复制的程序,因为它正在被修改以满足完全不同的市场的要求。但是,该计划的许多方面,特别是大部分内容,将保持不变(目前)。我们所针对的特定市场受政府监管,并且在处理过此类情况之前,我已经了解任何可以在任何时间改变。

我基本上有两种选择可供选择:

选项1:不要复制该程序。根据用户类型更改现有程序。 选项2:复制程序。对模板和编程进行必要的更改。

如果我选择选项1,代码将很快变得无法管理,整个代码中都会出现问题。对该计划进行非常大的改动也很困难。

如果我选择选项2,并且需要对两个程序之间通用的区域进行更改,我将不得不两次。

我觉得这两个选择都是一个坏主意,我觉得必须有一个更好的方法来处理这个问题。还有什么我可以做的吗?

你如何管理所有做类似事情的多个程序?

StackOverflow似乎可以很好地利用它们的多个StackExchange站点。

该项目是一个使用PHP,HTML,CSS,JS,PostgreSQL,Apache和SVN的Web应用程序。

提前致谢!

3 个答案:

答案 0 :(得分:3)

怎么样:

  • 维护公共部分的连贯代码库
  • 在软件的两个“版本”需要执行不同操作的每个地方,请调用函数
  • 在“版本”特定源文件中声明该函数
  • 有两个可以交换的源文件

这在PHP中特别容易,你可以在某个文件中声明一个全局函数。

答案 1 :(得分:2)

我建议阅读Martin Fowler撰写的重构书的第一章。它处理了一个非常相似的困境。

答案 2 :(得分:0)

感谢您提交的答案。

我和我的团队决定使用Subversion中的分支和标记管理此问题。

我们将维护一个代码主干,作为基本程序。当我们需要为新市场大量修改主干时,我们将从主干创建一个分支并在那里进行必要的更改。

这将使我们能够记录我们所做的所有更改以及应用的位置。