Шаблон «Конфигурация»

Данные, которые часто изменяют, выделяют отдельно и называют конфигурацией. Благодаря отделению конфигурацию проще создавать, редактировать, хранить. Конфигурация может быть реализована обособленным программным кодом, таблицей в базе данных, json-файлом или бинарником. Формат хранения не так важен. Важно, что данные отделяются от кода, обрабатывающего эти данные устраняя опасность его повреждения, устраняя дублирование. Код становится более документируемым. Изменение конфигурации выполняется отдельно от кода по ее обработке и более простым способом.

Приведем простой пример применения шаблона «конфигурация». Мы имеем enum и условие вида:

Выделим конфигурацию:

В результате код стал самодокументированным.

На практике часто возникает ситуация, когда нужно перечислить млекопитающих, вывести на экран и т.п. С данной целью выделим переменную «Млекопитающие» в члены класса расширяющий enum AnymalType:

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

После выделения «Конфигурации» и применения лямбда-выражений получим код:

 

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *