Convention over Configuration (CoC) — це принцип, який полягає в тому, що система або фреймворк вже має конфігурації за замовчуванням, дозволяючи розробнику уникати написання / створення налаштувань самостійно. Це значно скорочує кількість рішень, які потрібно приймати, і зменшує час на налаштування та розробку загалом.
Вперше цей підхід здобув популярність завдяки фреймворку Ruby on Rails. В основі Rails закладено ідею, що більшість розробників будуть виконувати подібні завдання схожими способами. Тому Rails забезпечує типові рішення, такі як структуризація файлів, назви моделей, контролерів і баз даних. Якщо дотримуватися прийнятих угод (conventions), система автоматично налаштовує багато аспектів програми. Наприклад, модель з назвою Article буде автоматично відповідати таблиці articles у базі даних, без потреби в додатковій конфігурації.
Це звільняє розробника від рутинної конфігурації. Виняткові випадки, де потрібна індивідуалізація, легко налаштовуються окремо, однак основний обсяг завдань можна виконати швидше, користуючись заздалегідь визначеними умовностями.
Позбавлення від надмірної конфігурації дозволяє зосередитися на логіці програми, а не на налаштуваннях. Це пришвидшує розробку і зменшує кількість помилок, оскільки менше конфігурацій означає менше місць, де може бути баг. Водночас цей підхід можна зустріти і за межами Rails. Багато сучасних фреймворків та інструментів використовують подібний підхід — від JavaScript-бібліотек до систем управління інфраструктурою.
CoC є одним із ключових підходів до спрощення процесу розробки, де програми, які відповідають встановленим угодам, потребують мінімальної конфігурації, а розробник отримує більше свободи для створення функціоналу замість роботи з дрібними налаштуваннями.
Приклад CoC (RoR)
Давайте розглянемо приклад CoC трохи детальніше, щоб зрозуміти де саме ми економимо час та зменшуємо ймовірність багів через доданий кастомний код.
Розробник створює модель – наприклад, модель Article у Rails.
Оскільки Convention over Configuration передбачає використання угод (конвенцій), Rails автоматично очікує, що таблиця для цієї моделі буде називатися articles (стандартна множина для англійських іменників).
Rails автоматично підключає цю модель до таблиці articles у базі даних, без необхідності додаткових налаштувань. Якщо угода підходить, додаткова конфігурація не потрібна.
Такий підхід звільняє від зайвої конфігурації, оскільки система покладається на типові налаштування.
Якщо простими словами - фреймворк вже має загальні конфігурації, які не треба вигадувати самому, а треба просто слідувати конвенціям, щоб все працювало "прямо з коробки".
Цей блок містить всю необхідну інформацію для правильного цитування, включаючи дату публікації, назву допису, URL та інше.
Зверніть увагу, що посилатись потрібно на автора/авторку контенту (профіль, окремий допис тощо), а сайт цейво (tseivo.com) - лише майданчик для розміщення публікацій.
💡 Архівування сторінки у веб-архіві, такому як Wayback Machine, є корисною практикою, коли ви посилаєтесь на неї. Це дозволить зберегти стан сторінки на цей час і знизить ризики від зміни контенту або зміни структури сайту у майбутньому.
Оберіть та скопіюйте потрібний стандарт цитування:
ДСТУ 8302:2015
Що таке Сonvention over Сonfiguration (в контексті RoR і не тільки)? [Електронний ресурс] // tseivo.com. – Режим доступу: https://tseivo.com/b/memecode/t/6rgob7vqor/shcho-take-sonvention-over-sonfiguration-v-konteksti-ror-i-ne-tilky (дата звернення: 05.10.2024). – Назва з екрана.
ДСТУ ГОСТ 7.1:2006 (ВАК)
Що таке Сonvention over Сonfiguration (в контексті RoR і не тільки)? [Електронний ресурс] // tseivo.com. – URL: https://tseivo.com/b/memecode/t/6rgob7vqor/shcho-take-sonvention-over-sonfiguration-v-konteksti-ror-i-ne-tilky (дата звернення: 05.10.2024).
Або ж використовуйте наступну інформацію для формування цитування:
Дата публікації:
26.09.2024
Назва допису:
Що таке Сonvention over Сonfiguration (в контексті RoR і не тільки)?
Автор/авторка пише під псевдонимом і не оприлюднює своє справжнє ім'я. Завжди перевіряйте достовірність контенту використовуючи декілька джерел (навіть, якщо контент опублікован під справжнім ім'ям).
Про зображення:
На нашій платформі ми приділяємо особливу увагу правильному вказуванню джерел зображень, щоб забезпечити дотримання авторських прав і прав на використання контенту. Ми намагаємося мотивувати використовувати виключно власні зображення, ресурси, що відповідають принципам fair use, або безкоштовні зображення з ліцензіями на кшталт Unsplash, які дозволяють вільне використання без порушення прав інтелектуальної власності.
Однак, враховуючи масштаб нашої платформи та різноманітність контенту, ми не можемо повністю контролювати всі публікації користувачів. Тому ми рекомендуємо перевіряти права на використання зображень та дотримуватися відповідних ліцензій, щоб уникнути можливих порушень авторських прав.
Інформація на сайті tseivo.com є суб'єктивною та відображає особисті погляди та досвід авторів та авторок блогів.
Використовуйте цей ресурс як одне з декількох джерел інформації під час своїх досліджень та прийняття рішень. Завжди застосовуйте критичне мислення. Людина сама несе відповідальність за свої рішення та дії.