воскресенье, 20 июня 2010 г.

Организация работы приложения соглассно настройкам

Сегодня вывел для себя правило, которое можно сформулировать так:

Если приложение работает соглассно настройкам пользователя, то наиболее удобная работа с настройками может быть достигнута при разработке класса конфигуратора приложения.


Довольно часто мне приходится разрабатывать приложение работающее соглассно заданными пользователями параметрами в различных конфигурационных файлах, реестре, через командную строку, окна GUI-интерфейса. Сегодня пришел, что для того, чтобы упростить работу с настройками мне куда удобней разрабатывать для приложений класс конфигуратор cConfigurator. Этот класс будет знать как прочитать из командной строки, конфигурационных файлов, реестра или еще как сохранить в них настройки выбранные пользователем в GUI интерфейсе.

Таким образом достигаю следующих целей:
1) Буду знать где читается\сохраняется настройка из реестра;
2) Аналогично для командной строки;
3) Аналогично для конфигурационных файлов;
4) Буду знать как прочитать\сохранить выбор сделанный пользователем через GUI-интерфейс;

Думаю, даже в случае многопрофильной работы, когда нужно будет задавать каждому профилю свои настройке, куда удобней написать классы умеющие работать с профилями и подчинить их классу конфигуратору, т.е. сделать доступными через интерфейс класса основного приложения.

ЗЫ:
Меня опять-таки выручает мой любимый вопрос "Чего ты Дима хочешь достигнуть используя это приложение?"

Комментариев нет: