А>>Хотелось бы узнать, как технически удобнее будет разделить программу на 2 версии lite и pro? Пишу на Delphi. А>>Делать через DEFINE/IFDEF не получится — слишком много отличий. Можно скопировать папку и делать PRO версию в ней, но тогда одинаковые изменения нужно будет вносить сразу в 2-х проектах (например, правка какого-то бага).
А>>Если кто имеет опыт, прошу поделиться.
А>>Спасибо за внимание!
T>Я думаю, Вам поможет полиморфизм и наследование.
T>Наследуйте Pro версии классов от Lite расширяя их функциональность. И в зависимости от опций поставки изменяйте набор классов (Абстрактная фабрика, например).
Почитал про абстр. фабрику, это вроде то, что нужно (хотя в паттернах познания у меня почти 0, надо еще будет разобраться). Там еще все сделано на интерфейсах, а в интерфейсах нет переменных — как быть в таком случае? Например, класс для сохранения настроек программы. В про версии будут теже настройки что и в лайт, и плюс еще что-нибудь — это делается простым наследованием?