【发布时间】:2017-03-28 03:46:00
【问题描述】:
我正在开发一款针对特定业务合作伙伴而非消费者的应用。起初,我们有一个主要代码库,仅在资源之类的琐碎事物上根据每个客户的风格进行区分(例如,将为每个客户定义不同的主颜色和徽标)。
然而,随着时间的推移,不同的客户需要不同的逻辑,我们不得不适应,所以我们将小块代码分解为一个“默认行为”类,该类在每种风格上都有一个扩展它的类,因此我们可以对每个风格进行细微的更改味道。
问题是随着时间的推移,基本行为类已经变成了怪物,重构很可能会破坏一种或另一种风格(大约有 30 种)。
所以基本上我的问题是:
谁能想到一个设计解决方案可以扩展以帮助管理具有多种风格的应用程序,在 UI 和逻辑方面越来越不同,代码重复最少且易于维护?
【问题讨论】: