Джейквери живее всех живых :‑)

Синтаксическим сахаром называют расширение языка программирования, которое не влияет на поведение программы, но делает использование языка удобнее для программиста

Напомню: Джейквери — это подключаемая к сайту библиотека, набор обёрток над Яваскриптом для удобной работы с элементами страницы, «синтаксический сахар». Позволяет писать более лаконичный код:

Синтаксическим сахаром называют расширение языка программирования, которое не влияет на поведение программы, но делает использование языка удобнее для программиста
Яваскрипт
const elements = document.querySelectorAll('.el') ​ // Нужно запомнить обработчик события, // иначе мы не сможем отключить его позже let clickHandler = element => { const shinyButton = document.createElement('button') shinyButton.classList.add('shiny') shinyButton.innerText = "Кнопка" this.appendChild(shinyButton) } ​ for (let element of elements) { element.addEventListener('click', clickHandler) } ​ // Позже for (let element of elements) { element.removeEventListener('click', clickHandler) }
Джейквери
const elements = $('.el') ​ elements.on('click', () => { $(this).append($('<button class="shiny">Кнопка</button>')) }) ​ // Позже elements.off('click')

Хотя Яваскрипт постепенно развивается и становится лаконичнее сам по себе, многие конструкции Джейквери до сих пор выигрывают по краткости и удобству использования.

Когда использовать Джейквери

Лучше всего Джейквери подходит для сайтов среднего размера: корпоративных сайтов, блогов, небольших интернет‑магазинов. Обычно на таких сайтах наберётся с десяток интерактивных элементов с несложной логикой. Джейквери в таких условиях сократит объём кода, сделает его проще и понятнее.

Когда Джейквери не подходит

Джейквери обычно избыточен для крошечных сайтов без особого интерактива. Если нужен клик по единственной кнопке или отправка простой формы, то может быть проще написать код на чистом Яваскрипте.

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

Если использовать Джейквери для разработки сложного интерфейса, то большую часть кода займёт служебный обвес: навешивание обработчиков событий, проверки наличия классов, обновление содержимого и атрибутов тегов. Ещё есть большой риск слишком плотно связать логику и вёрстку, усложнив поддержку и развитие проекта.

Для сложного интерфейса гораздо эффективнее и надёжнее использовать реактивные фреймворки, вроде Реакта или Вью. Они разделяют логику и представление, берут на себя синхронизацию вёрстки с данными, чтобы разработчики могли сконцентрироваться на написании бизнес‑логики.

P. S. Это был совет о веб‑разработке. Хотите знать всё о коде, тестах, фронтенд‑разработке, цеэсэсе, яваскрипте, рельсах и джейде? Присылайте вопросы.
Веб‑разработка
Отправить
Поделиться
Запинить

Рекомендуем другие советы