Есть ли стандартная практика для хранения данных приложения по умолчанию?

StackOverflow https://stackoverflow.com/questions/2968870

  •  24-10-2019
  •  | 
  •  

Вопрос

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

В настоящее время исходные данные по умолчанию хранятся как населенный класс в приложении. Обновления данных хранятся во внешнем XML -файле. Этот дизайн позволяет нам включить функцию «сбросить» для восстановления исходных данных по умолчанию. Наше обоснование не хранения по умолчанию извне [например, XML -файла] состояло в том, чтобы минимизировать риск изменения. Общий объем данных не требует базы данных.

Есть ли стандартная практика для хранения данных приложения «по умолчанию»?

Это было полезно?

Решение

Предположим, я был отвечает: «Да, есть стандарт. 79% систем во всем мире в базе данных». Вы бы теперь почувствовали мотивацию принять базу данных? Конечно, нет! Ваши конкретные требования не заслуживают этого накладных расходов.

Мы говорим здесь. Нужно ли часто меняться по умолчанию? Сколько усилий это изменить, используя ваш текущий подход? Вам нужно выпустить разные версии приложения с разными значениями по умолчанию? Полностью меняются по умолчанию при переезде от UAT к производству?

Если вы изучите свои требования, должно появиться инженерное решение. Во всей вероятности вы тогда сделаете лучший выбор, чем текущая общая практика («стандарт»), которую приняли большинство людей, что слишком часто состоит в том, чтобы использовать любую технику, которую они использовали в своем предыдущем проекте.

Для того, что это стоит, мой личный «стандарт» - это экстернализировать все. Даже когда я не ожидаю, что все изменится, где -то, где -то, они делают. После того, как я решил экстернализировать, XML или файлы свойств не имеют большого значения для меня.

Другие советы

Файлы свойств звучат как ОК. Вы также можете включить их в банку, чтобы вам не пришлось носить с собой. РЕДАКТИРОВАТЬ: «Сбросить» функция входит в код вашего приложения.

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

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top