В течение долгого времени JavaScript был героем современной паутины, набираясь на создание полномасштабных приложений в браузере. Но в последнее время было тихое восстание. Разработчики возвращаются к подходам HTML-первого-более быстрые, простые, более устойчивые.
Вместо того, чтобы по умолчанию, по умолчанию обращаются к фреймволкам, больше команд обращаются к HTML и CSS снова как первоклассными гражданами, опираясь на JavaScript только тогда, когда он действительно усиливает опыт. Это не ностальгия — это рассчитанная коррекция. Реальный вопрос сейчас: является ли этот сдвиг — признаком зрелости JavaScript или появления более обоснованной философии веб -разработки?
Рамочное похмелье
На протяжении более 10 лет веб-разработка была укоренилась в мышлении JavaScript. С ростом одностраничных приложений (SPAS) JavaScript перестал быть просто языком сценариев и стал основой всего фронта-до такой степени, что HTML и CSS часто генерировались JavaScript, манипулируемыми JavaScript или даже откровенными замененными абстракциями JavaScript. Мы сказали себе, что это был прогресс, что опыт разработчика оправдывал компромиссы.
И в некотором смысле это так. Спа -салоны давайте построим динамические, интерактивные интерфейсы. Такие рамки, как React, давали нам модели компонентов, которые были гораздо более мощными, чем статические шаблоны HTML. Но маятник зашел слишком далеко. Приложения начали ломаться без JavaScript. Страницы оказались пустыми до завершения гидратации. Целые разделы контента были недоступны для скалеров или считывателей экрана. То, что когда -то было предназначено для улучшения опыта пользователя, стало зависимостью, которая могла бы подорвать его.
Основной вопрос стал труднее игнорировать: решаем ли мы правильные проблемы или просто строим более сложные решения?
Разработчики стали инженерами OPS-конфигурациями сборки, конфигураций WebPack, пучков, стратегий уклонения деревьев и увлажнения. То, что раньше было простым веб-сайтом, теперь было машиной на основе JS с десятками движущихся частей. Результат? Более медленная производительность, более крутые кривые обучения и сеть, которая все чаще обслуживает разработчиков больше, чем для пользователей. Основной вопрос стал труднее игнорировать: решаем ли мы правильные проблемы или просто строим более сложные решения?
Что ж, кроме инновационных решений, таких как Elixir, многие разработчики теперь возвращаются к сталевой надежной: HTML.
Восстание инструментов HTML-первых
Новые инструменты и философии, такие как Astro, HTMX, Enhance и Markojs, переворачивают традиционную фронтальную парадигму с ног на голову. Вместо того, чтобы начинать с рамки и разбрызгивания в HTML, они начинаются с чистого семантического HTML и постепенно улучшают его с помощью JavaScript. Акцент делается на скорость, доступность и простоту.
Возьмите Astro в качестве примера. По умолчанию он отправляет Zero JavaScript, позволяя разработчикам выбирать только при необходимости. Вы пишете в основном HTML и CSS, и увлажняете компоненты, только если требует интерактивности. Это не возвращение на статические сайты, а скорее более вдумчивая, первая архитектура.
Основополагающий язык Интернета, HTML, все еще заслуживает высшего платежа.
Тем временем HTMX позволяет отправлять HTML через проволоку и прикреплять поведение декларативно с использованием атрибутов. Это элегантно, терпимо и невероятно эффективно для создания интерактивных приложений, не раскручивая полную среду JS.
Эти инструменты представляют больше, чем просто новые варианты. Они обозначают более глубокий культурный сдвиг, признание того, что основополагающий язык Интернета HTML по -прежнему заслуживает высшего выставления.
Момент зрелости JavaScript
Вместо того, чтобы исчезать, JavaScript развивается. Его роль переопределяется от «рендерирования всего все время» до «улучшения там, где это считается». Это во многих отношениях, признак зрелости. JS не выбрасывается, это просто (наконец) просят действовать в своем возрасте.
Например, серверный рендеринг (SSR) сделал огромное возвращение, включенное в такие инструменты, как Next.js и Sveltekit. Даже традиционно адаптации JS-тяжелых фреймворков: CreAct Server Components, акцент Remix на сервере, а более стройная экосистема Vue отражает более широкое желание обуздать избыток на стороне клиента.
HTML для содержания, CSS для стиля, JavaScript для взаимодействия (только при необходимости).
С растущими опасениями, связанными с распределенными атаками отказа в услуге (DDOS), современные экосистемы JavaScript используют SSR и Edge Computing, чтобы уменьшить поверхность атаки, децентрализовать узкие места рабочей нагрузки и смягчить уязвимость клиента.
Что меняется, так это мышление по умолчанию. Разработчикам рекомендуется сначала привлечься к местным возможностям браузера: HTML для контента, CSS для стиля, JavaScript для взаимодействия (только в случае необходимости). Эта прогрессия перекликается с духом прогрессивного улучшения и доступности, которую многие современные разработчики игнорировали в рамочном увлечении.
Почему этот сдвиг имеет значение
Это не просто занудные дебаты о предпочтениях разработчика. Это разговор, который напрямую влияет на пользователей. HTML-первые проекты загружаются быстрее, разлагаются лучше и играют лучше с поисковыми системами и вспомогательными технологиями. Сайты становятся более устойчивыми, более обслуживаемыми и часто более приятными для строительства.
Аналогичным образом, вы также должны рассматривать рост основных веб -жизненных возможностей как фактор ранжирования. Или повсеместное использование бюджетов по мобильным показателям. Разработчики больше не судят исключительно по функциям — они оцениваются о том, как эффективно появляются эти функции и ведут себя. Первый подход HTML прекрасно соответствует этой реальности.
Это также уменьшает барьер для входа. Новые разработчики могут изучить строительные блоки веб -сайта, не будучи перегруженными конфигурацией WebPack или деревом синтаксиса JSX. Таким образом, HTML-First-не только победа в результате выступления, но и педагогическую.
Но масштабируется ли это?
Естественный вопрос заключается в том, могут ли HTML-первые архитектуры поддерживать сложные динамические приложения. И ответ все чаще выглядит как да.
Такие проекты, как Enhance и QWIK, доказывают, что прогрессивное улучшение может сосуществовать с масштабируемостью. Вместо того, чтобы переосмыслить колесо, они используют такие функции платформы, как веб-компоненты и сам DOM. И они делают это, позволяя ленивым загрузке, увлажнению и динамическим обновлениям, только без подхода традиционных рамок для всех или ничего.
Когда вы перестаете относиться к браузеру как с тупым холстом и начинаете использовать его родное поведение, вы можете зайти на удивление.
Даже крупные команды в таких компаниях, как Google, NetLify и Shopify, изучают HTML-первые или островные архитектуры, чтобы приручить свои растущие кодовые базы. Оказывается, что когда вы перестаете относиться к браузеру как тупому холсту и начинаете использовать его родное поведение, вы можете удивительно далеко.
Сложность не исчезает. Но он становится более преднамеренным, более модульным и менее привязанным к жизненному циклу или модели состояния одной структуры. Это большое дело.
Что нужно разработчикам, чтобы переуживание
Если вы потратили последние пять лет, думая с точки зрения реквизита, маршрутизации штата и на стороне клиента, сдвиг HTML-первой может показаться резким. Но речь идет не о том, чтобы отказаться от ваших с трудом заработанных навыков. Речь идет о вновь открытии оригинального намерения Интернета.
В результате разработчикам теперь нужно знать, как:
- Напишите семантический, доступный HTML, который ясно передает структуру и намерения как браузерам, так и вспомогательные технологии.
- Принимайте HTTP-глаголы, такие как Get and Post, и опирайтесь на ответы на сервере, чтобы обработать переходы состояния вместо того, чтобы разгружать все на клиент.
- Используйте возможности CSS, такие как переходы для анимации, медиа-запросы для отзывчивых макетов и запросов на контейнеры для отзывчивости на уровне компонентов, избегая JavaScript, когда достаточно нативных решений.
- Дизайн взаимодействия вокруг форм и судоходных URL -адресов, обеспечивая лучшие запасные отступления, общепринятую и снижающую сложность фронта, а не полагаться на инкапсулированные теневые DOMS или маршрутизацию только через API.
Это не регрессия. Речь идет о повторном открытии инструментов, которые никогда не переставали работать. Философия HTML заставляет разработчиков думать об архитектуре, доставке и производительности с самого начала. Это поощряет интенциональность.
Будущее слоится, а не сложено
Фреймворки не умирают; Они развиваются. Будущее frontend не будет возвращением в HTML только, а многослойный подход, где HTML-это коренная порода, а не запоздалая мысль. Вы все еще можете использовать React, Svelte или Vue, но в качестве улучшений, а не фундаментов.
Мы могли бы стать свидетелем долгожданной взрослой жизни JavaScript.
И это самая зрелая вещь, которую может сделать JavaScript: научиться руководить и когда следовать. Позвольте HTML структурировать вашу страницу, позвольте CSS нарисовать ее и позвольте JavaScript оживить ее — тщательно, точно и только при необходимости.
Мы могли бы стать свидетелем долгожданной взрослой жизни JavaScript. Это не яркое, это не догматично, он больше не пытается доминировать в стеке. Это просто пытается вписаться.
А честно? Это может быть самой захватывающей вещью, которая случится с фронтом за последние годы.
Trending Stories youtube.com/thenewstack Tech движется быстро, не пропустите эпизод. Подпишитесь на наш канал YouTube, чтобы транслировать все наши подкасты, интервью, демонстрации и многое другое. Группа подпишитесь с эскизом. Александр Уильямс — разработчик и технический писатель с полным стеком с опытом работы в качестве независимого ИТ -консультанта и помогая новым владельцам бизнеса создать свои веб -сайты. Подробнее от Александра Т. Уильямса