Термин DSL
DSL (Domain Specific Language) — это предметно-ориентированный язык. Способ писать код так, чтобы он был максимально приближен к понятиям конкретной задачи.
По факту обычно DSL это набор функций, которые очень хорошо читаются и понимаются в рамках текущего контекста.
Например, в Rails моделях методы belongs_to и has_many отвечают за связи между моделями (таблицами).
Метод validates отвечает за валидации даных при сохранении/обновлении модели.
DSL делает код декларативным — ты описываешь, что нужно сделать, а Rails под капотом знает, как это сделать.
Рельсовые разработчики очень любят писать свои DSL для разных предметных областей.
Однако, не забывайте, дизайн и реализация удачного и эффективного DSL это непростая задача. Почти искусство.
Иногда DSL становится не помощником, а тайм-киллером. Иногда можно и нужно решать задачи простым способом, не усложняя.
#словарь
Группа: @pro_ruby_on_rails_ru
Вопросы: @ilia_zykin
❤️ лайк 🔂 репост
Post #100
319

- ❤ 6
- 👍 1