Возможные этапы развития web-сайтов

Aleksey Pleshkov
Jul 10, 2017 · 2 min read

В предыдущем статье мы разобрали основные проблемы современного веба. Если коротко, то проблема в отсутствии унифицированности устройств, операционных систем и браузеров. При разработке сайтов, мы сталкиваемся с небывалым количеством проблем по отображению сайта у разных пользователей и отработки элементов. Мы либо отбрасываем большую часть отсталых пользователей(старые устройства/операционные системы) или делаем изначально устаревший продукт.

Дальше мы попробуем разбить веб на два эволюционных пути и попробуем представить, как он будет развиваться в этих направлениях.

Путь 1. Все идет как шло

Если развитие сайтостроения будет продолжать двигаться в эту же сторону, то и здесь есть выход. В данный момент мир разработки сайтов предоставляет нам множество интересных инструментов для упрощения жизни разработчика. Для быстрой верстки и более унифицированного вида можно использовать CSS-фреймворки Bootstrap/Foundation/Другие. При правильной кастомизации их исходного стиля, не так сложно будет добиться вполне хорошего отображения готового продукта на разных устройствах и дисплеях.

Какое решение было бы идеальным? Полностью упакованный фреймворк, который бы работал по принципу компонентов и лайаутов (как в разработке андроид приложений), с автоматически-адаптирующимися величинами под дисплей пользователя. Заменить html на препроцессорный язык (как это обстоит с CSS), который работает по принципу наброски компонентов на лайауты. К каждому компоненту привязывается стиль, по принципу class/id в html. Таким образом мы получаем автоматизированную систему, которая адаптируется под разрешение дисплея, версию операционной системы или браузера.

В общий чертах, всю веб разработку можно перенести в один язык программирования (и точно уж не в js, хватит с нас бэкенщиков на nodejs), который уже транслируется в понятную, для браузера, упаковку html/css/js. Идеально подходит ООП структура языка, для работы с компонентами и для переопределения их. Надеюсь найдутся умельцы, которые реализуют подобную задумку в лучшем свете.

Путь 2. Слава унифицированности.

А теперь поговорим про утопию. Представим, что пользователь перешел по адресу сайта и автоматически у него открылся сайт как мобильное приложение. Как это возможно без рисков? При переходе по адресу сайта «будущий браузер» выкачивает набор инструкций (по принципу работы JVM), которые загружаются в оперативную память и запускается наше приложение. Загруженные инструкции будут дергать за ниточки уже существующие компоненты и их стили. Все иконки можно хранить в векторе, размер их будет минимальный, изображения подгружать ленивой загрузкой. В общей сложности приложение может занимать не больше 5 мб для полноценной работы. Большинство современных сайтов сейчас весят приблизительно от 5 мб.

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

Заключение

Конечно на эту тему можно размышлять много и долго, но я попытался сжать размышления до минимума. К сожалению, все идет по 50% первого пути. Нет унификации в инструментах, а все так же разрабатываются костыли для других велосипедов. Одна часть «умельцев» пытается превратить JS в полноценный язык программирования, а другая разрабатывает на устаревших подходах. Вот такой вот современных веб..

Welcome to a place where words matter. On Medium, smart voices and original ideas take center stage - with no ads in sight. Watch
Follow all the topics you care about, and we’ll deliver the best stories for you to your homepage and inbox. Explore
Get unlimited access to the best stories on Medium — and support writers while you’re at it. Just $5/month. Upgrade