Перейти к содержанию
🌲 С 2026 годом! 🥂
Пусть он будет победным! 🌟

Соглашения по конфигурации

Эта статья находится на начальном уровне проработки, в одной из её версий выборочно используется текст из источника, распространяемого под свободной лицензией
Материал из энциклопедии Руниверсалис
(перенаправлено с «Convention over configuration»)

Cоглашения по конфигурации (англ. Convention over configuration, также известен как англ. coding by convention) — концепт (или принцип) проектирования программного обеспечения, заключающийся в том, что рассматриваемые аспекты нуждаются в конфигурации тогда и только тогда, когда этот аспект не удовлетворяет некоторой спецификации. Принцип как правило, применяется в разработке фреймворков, и позволяет сократить количество требуемой конфигурации без потери гибкости[1][2].

Концепт «Cоглашения по конфигурации» основан на существовавших ранее таких понятиях, как разумные значения по умолчанию (англ. sensible defaults) или правило наименьшего удивления при проектировании интерфейса пользователя[англ.]. Концепт впервые был представлен Давидом Ханссоном в его описании фреймворка Ruby on Rails. Впоследствии принцип стал широко использоваться в других фреймворках, таких как Apache Maven, Spring Framework и др.[1]

Описание

Например, если свойство класса называется как «Sales», то отображение свойства на поле таблицы будет по умолчанию и согласно концепту проводится на имя «Sales». Аналогично, если экземпляр данного класса необходимо преобразовать в строковый формат (JSON, XML и др.), то для именования поля по умолчанию фреймворк выберет «Sales»[2].

В качестве другого примера применения принципа является задание структур проекта и правил поведения по умолчанию. Например, Apache Maven по умолчанию создает определённую структуру каталогов для файлов проекта, а само выполнение сборки производится посредством фиксированных фреймворком шагов[1].

Примечания

  1. 1,0 1,1 1,2 Maven by Example. Дата обращения: 4 ноября 2016. Архивировано 28 октября 2016 года.
  2. 2,0 2,1 Что такое Convention over Configuration?. Дата обращения: 4 ноября 2016. Архивировано 14 сентября 2016 года.

Ссылки