Основные тренды фронтенд-разработки в 2020 году

внешний фреймворк

Стремительное развитие фронтенд-разработки каждый год приносит разработчикам новые ключевые слова. 2019 год подошел к концу, какими будут ключевые слова для front-end разработки в 2020 году? Каким будет направление развития? Ссылаясь на развитие большого интерфейса в 2019 году, неудивительно, что интерфейс по-прежнему будет сосредоточен на небольших программах, супер-приложениях, кросс-энд разработке, фронтенд-инжиниринге и применении новых технологий (см.Углубленная интерпретация крупных тенденций в области передовых технологий в 2019 году.).

Апплеты

С точки зрения небольших программ, этот год по-прежнему является годом быстрой разработки небольших программ.Все основные основные приложения запустили поддержку возможностей небольших программ, и у каждой фронтенд-команды также есть специальная группа разработки небольших программ.Адаптируйтесь к более быстрой небольшие потребности в разработке программ. В то же время многие ключевые функции в приложении были заменены небольшими программами, и даже некоторые приложения стали нативными небольшими программными оболочками, а реализации приложений верхнего уровня — это все небольшие программы.

До появления мини-программ WeChat все говорили о Hybrid и ReactNative, но ведь это был просто карнавал на техническом уровне, и не было вливания бизнес-атрибутов. Появление небольших программ, с одной стороны, сообщает отрасли, что Webview неплох на современных устройствах, а с другой стороны, сообщает отрасли, как разрешить способным продавцам проводить операции с частными доменами на суперприложениях.

С другой стороны, с технической точки зрения, при строгих ограничениях DSL верхнего уровня суперприложения могут определять веб-стандарты, отвечающие их собственным требованиям, компенсировать недостатки текущих веб-стандартов и, наконец, сотрудничать с клиент, сочетающий в себе автономный режим, предварительную загрузку и настраиваемый веб-просмотр.Он может создавать различные классные технические модели, подобные NSR, так что в конце концов Интернет может получить опыт нативной версии с низкими затратами, и это не будет немного неловко. как Weex вне конца.

Однако из-за необходимости полагаться на суперприложения (WeChat, Alipay, Baidu, Meituan, Toutiao и т. д.), из-за различий в конкретных решениях, принятых каждой платформой, текущие планы реализации небольших программ также различаются, иногда необходимо разработать несколько наборов кодов.

Кросс-энд разработка

С точки зрения кросс-энд разработки, экосистема RN очень зрелая, или перспектив развития не так много, потому что она все еще находится в версии 0.61, а до версии 1.0, похоже, еще далеко. Поэтому в этом году многие команды обратились к Flutter в Song Ecology, особенно к первому выпуску Flutter для Интернета, который возродил надежду и рвение к интерфейсу Интернета.

В то же время Apple также выпустила новую систему пользовательского интерфейса - SwiftUI. В то же время SwiftUI для Интернета уже находится на пути в сообществе с открытым исходным кодом. Будет ли SwiftUI для Android далеко позади?

С точки зрения сквозной разработки, Flutter по-прежнему будет быстро развиваться, и разработчиков будет больше. Flutter на JS, SwiftUI для Web и Android также будут тем, чего стоит ожидать в экосистеме с открытым исходным кодом. нет идеального решения для кросс-энд разработки.

Фронтенд-инжиниринг

Во фронтенд-инжиниринге наиболее важным базовым качеством разработчиков является повышение эффективности с помощью инструментов, и фронтенд-разработчики будут продолжать итерации и оптимизацию в этом отношении.

Раньше мы говорили о Yoman и ряде инструментов сборки, таких как CLI, но после того, как команда стала больше, всегда казалось, что что-то не так. С другой стороны, изучающие Java никогда не слышали об инженерах по настройке Spring Boot. В этом году многие команды создают полный набор интерфейсных инструментов процесса DevOps, а некоторые команды также начали сотрудничать и создавать, будь то веб-проект или небольшой программный проект, из новых проектов, разработки, совместной отладки (tiao). , развертывание, тестирование, публикация, эксплуатация и обслуживание, а также мониторинг статистики — все они имеют полные инструменты для обеспечения и повышения эффективности.В будущем интерфейсная разработка будет становиться все более и более стандартизированной.

С нетерпением ожидая развития фронтенда в 2020 году, система фронтенд-инжиниринга определенно будет более замкнутой, она больше не будет такой простой, как строительные леса, а будет сочетать в себе IDE, чтобы открыть бизнес-атрибуты, от проекта инициализации, написанию кода, CI, оттенкам серого, освобождению от завершенного замкнутого цикла.

Serverless

Взрыв бессерверных технологий почти можно отнести к внешнему интерфейсу. Поскольку Serverless может прекрасно поддерживать Node.js, использование Serverless помогает разработчикам переднего плана решать многие проблемы в процессе использования Node.js.

Большинство нынешних фронтенд-инженеров имеют профессиональное образование, и хотя их нельзя сравнивать с настоящими студентами, изучающими серверную часть, они также могут написать много серверной бизнес-логики. В настоящее время многие компании работают над слоем BFF, чтобы удовлетворить эту часть спроса, но они до сих пор не могут избавиться от камня преткновения эксплуатации и обслуживания и распределения машин. С постепенным внедрением Serverless код слоя BFF избавится от сложных проблем, таких как эксплуатация и обслуживание, выделение машин и т. д. При этом, эту часть кода, скорее всего, будут писать фронтенд-студенты, а студенты, изучающие серверную часть, сосредоточатся на реализации промежуточной системы. С точки зрения бизнеса, затраты на пробы и ошибки также будут значительно снижены.

Поскольку Node.js становится обязательным навыком для разработчиков интерфейсов, растущая популярность облачных вычислений сделает Serverless доступным. По мере того, как все больше и больше разработчиков ощущают преимущества эффективных исследований и разработок, Serverless определенно изменит модель R&D переднего плана.

В то же время студенты, использующие Serverless, обязательно будут использовать TS. Это также означает, что если вы не напишете TS в 2020 году, вы действительно можете уйти.

WebAssembly

WebAssembly — это новый формат байт-кода, и основные браузеры уже поддерживают WebAssembly. В отличие от JS, который необходимо интерпретировать и выполнять, байт-код WebAssembly очень похож на базовый машинный код и может быть загружен и запущен быстро, поэтому производительность значительно повышается по сравнению с интерпретацией и выполнением JS. Другими словами, WebAssembly - это не язык программирования, а стандарт байт-кода. Он должен скомпилировать байт-код на языке программирования высокого уровня и поместить его в виртуальную машину WebAssembly для запуска. Что производители браузеров должны сделать, так это внедрить виртуальная машина.

С WebAssembly любой язык может быть запущен в браузере. От Coffee до TypeScript и Babel — все они должны быть переведены в js для выполнения, в то время как WebAssembly встраивается в виртуальную машину в браузере и выполняется напрямую без перевода, поэтому эффективность выполнения, естественно, намного выше.

Например, программное обеспечение AutoCAD представляет собой программное обеспечение для автоматического автоматизированного проектирования, разработанное Autodesk, которое можно использовать для создания 2D-чертежей и базовых 3D-проектов. При его использовании вы можете рисовать автоматически, не зная программирования, поэтому он широко используется во многих областях, таких как гражданское строительство, отделка, промышленный рисунок, инженерный рисунок, электронная промышленность, обработка одежды и так далее.

AutoCAD — это программное обеспечение, написанное с использованием большого количества кода C++ и претерпевшее множество технологических изменений, от настольных до мобильных и веб-приложений. До этого на InfoQ было выступление под названием «AutoCAD & WebAssembly: перенос 30-летней кодовой базы в Web», то есть через WebAssembly многие древние коды C++ можно запускать в Web, и эффективность исполнения гарантирована.

Основной механизм JavaScript Chrome, V8, теперь включает в себя Liftoff, новый базовый компилятор WebAssembly. Простой и быстрый генератор кода Liftoff значительно повышает скорость запуска приложений WebAssembly. В 2019 году многие компании начали вкладывать силы в изучение и трансформацию WebAssembly, и я считаю, что в 2020 году WebAssembly переживет взрывной период.

5G

Неизбежная тема 2019 года — 5G. Прежде всего, существенное увеличение пропускной способности 5G приводит к дальнейшему увеличению сложности традиционных веб-страниц, точно так же, как при переходе от 2G к 4G страница переходит от эпохи простых текстовых гиперссылок WAP к эпохе полноэкранного видео 4G. Изменения, которые 5G принесет на страницу, безусловно, будут огромными, но это точно не произойдет в одночасье. Потому что соответствующие вспомогательные средства также необходимо постепенно улучшать, такие как производительность оборудования и скорость обработки браузера. И рендеринг на стороне сервера (SSR) определенно является одним из ярлыков.Осветив фронтенд и подчеркнув бэкенд, 5G — это мост.Поставить рендеринг на задний план не так просто, как изоморфизм.Нужно обратить внимание на и оптимизировать производительность рендеринга. Благодаря этой возможности WebAssembly может быстро развиваться, поскольку он может беспрепятственно взаимодействовать с несколькими языками в фоновом режиме, а оптимизация фонового рендеринга также приведет к изменениям в модели разработки и технической архитектуре интерфейсных страниц.

Во-вторых, Интернет всего, принесенный 5G, принесет множество сценариев приложений, которые отличаются от смартфонов и обычных ПК.Виртуальная реальность, носимые устройства, бортовые системы, интеллектуальная проекция, интеллектуальное взаимодействие и т. д. вертикалей также означает, что в передней части будет больше места. Считается, что с масштабной коммерциализацией 5G родится новая партия интернет-гигантов.