- Исходная ссылка: https://www.monterail.com/state-of-vuejs-report
- Перевод с:Программа перевода самородков
- Организатор мероприятия:leviding
- Переводчики:sasa-m,altairlu,ParadeTo,ly525,zwwill,html5challenge,vxqqb
- Рецензенты:leviding,ParadeTo,PCAaron,vxqqb,zwwill,caoyi0905,JohnJiangLA,html5challenge,iFwu
- Постоянная ссылка на эту статью:GitHub.com/rare earth/gold-no…
последовательность
Несколько лет назад Монтерейл был известным разработчиком программного обеспечения благодаря своему опыту работы с Ruby и Rail. Но сейчас Монтерейл и ее продукция кажутся немного устаревшими. Когда мы разрабатывали традиционные многостраничные приложения на Ruby, мы быстро поняли, что многие хорошие практики и нормы разработки изменились по мере развития и развития технологий. Старомодного подхода недостаточно для удовлетворения потребностей рынка, и в 2011 году мы выбрали Backbone.js в качестве нашего первого js-фреймворка. Мы активно следили за этим быстро меняющимся миром, рано внедрив Angular JS и очень хорошо в нем разбираясь. Сегодня в новом поколении фреймворков разработки на основе компонентов наша команда изучила React (включая React Native), Angular (angular2 и выше) и наиболее широко используемый Vue.js!
Знакомый не обязательно хороший
Те клиенты, которые просили разрабатывать приложения на Vue, никогда раньше не слышали о Vue. Но когда они использовали его, они были впечатлены расширяемостью и возможностями Vue и захотели включить Vue в свой технический стек. Мы считаем, что многие компании используют хорошо известные фреймворки не потому, что они принимали решения на основе исчерпывающей информации, а просто потому, что эти фреймворки хорошо известны и знакомы. Чего они не понимают, так это того, что малоизвестный Vue сочетает в себе продвинутые части Angular, React и более дружелюбен.
Зачем проводить этот опрос
Используя Vue, мы можем более эффективно выпускать более качественные продукты, лучше вести наш бизнес и делать наших клиентов счастливее, и мы считаем, что Vue заслуживает внимания и любим всеми. Из-за этого мы полны решимости начать проповедовать разработчикам и предприятиям и распространять Vue по всему миру; в то же время мы планируем еженедельный информационный бюллетень Vue, организуем первую международную конференцию Vue.js VueConf и создаем библиотеки Vue, такие как Vuelidate. и Vue-mulitselect.
Отчет, который вы собираетесь прочесть, является еще одной вехой в нашей пропаганде и продвижении Vue. Отчет преследует три основные цели. 1. Предоставьте надежный вариант использования Vue в бизнесе, чтобы каждый мог получить представление о том, как другие компании используют Vue 2. Пусть те, кто не слышал о Vue, узнают о Vue и дайте им достаточно причин, чтобы узнать о нем больше. 3. Давайте перестанем убеждать клиентов в том, что Vue.js — это зрелое решение, которое может помочь нам создавать различные приложения.
Содержание отчета
Наслаждайся чтением!
ОтчетПоказывает Vue с точки зрения владельца бизнеса и разработчика. Мы опросили более 1100 отраслевых экспертов из 88 стран об их опыте работы с Vue, функциях, которые им нравятся, и тех, которые им не нравятся; мы подробно опросили 6 компаний, чтобы спросить их, какие решения они хотят решить с помощью Vue.js. Чтобы дать читателям всестороннее представление о развитии Vue в последние годы, мы рассказываем историю Vue.js, а также мысли создателя фреймворка Юкси Ю о будущем Vue.js.
Плавное завершение отчета было поддержано многими. Они поделились своими знаниями и опытом и очень помогли нам просто потому, что хотели внести свой вклад в сообщество.
Спасибо, Эван Ю (Ю Юси). Он был увлечен этим отчетом с самого начала и поддерживал нас на всех этапах процесса создания отчета. В то же время Эван Ю также поделился своими ценными взглядами на будущее и дальнейшее планирование Vue.js и выразил поддержку моим усилиям.
Спасибо Крису Фрицу и Эвану, основным членам Vue.js, за их большую помощь в анализе результатов. Действительно заслуженный! Благодаря этому сотрудничеству мы очень довольны качеством итогового отчета.
Большое спасибо Джейкобу Шацу, Сильвену Симао, Роману Кубе, Жилю Берто, Скотту О’Брайену, Эрин Депью, Мэтту О’Коннеллу и Юрию Немцову. Учебные примеры в отчете не существовали бы, если бы вы не поделились своими историями.
основные участники
Эволюция Vue.js
Знаете ли вы, когда впервые был выпущен Vue?Первоначально он даже не назывался «Vue». Первый коммит автора был сделан 27 июня 2013 года, когда проект назывался «Seed», и в мгновение ока Vue.js исполнилось четыре года. Название «Seed» использовалось полгода, а в начале декабря 2013 года автор официально изменил его название на «Vue». Однако первая внешняя версия Vue (0.8.0) была выпущена в феврале 2014 года, и в то время Vue.js был ориентирован только на View-часть архитектуры MVC.
Vue имеет несколько важных функций, которые облегчают освоение разработчиками. Стиль синтаксиса шаблона Vue очень похож на AngularJS, и он также имеет компонентную архитектуру, представленную React, так что разработчики могут плавно переходить с обоих на Vue. Я бы подумал о Vue как о дочернем продукте, который унаследовал хорошие гены своих родителей (AngularJS, React) и продолжает улучшать опыт разработчиков.
И только год спустя, когда сообщество Laravel (сообщество популярного PHP-фреймворка) впервые использовало Vue, JS-сообщество все больше и больше интересовалось Vue, и он действительно стал популярным. Через несколько месяцев наконец-то был выпущен долгожданный релиз 1.0, важный релиз для Vue.
В то же время vue-router (2015-08-18), vuex (2015-11-28) и vue-cli (2015-12-27) были выпущены последовательно, что означает, что Vue.js развился из просмотреть библиотеку слоев для того, что мы сейчас называем прогрессивными фреймворками.
В прошлом году была выпущена долгожданная альфа-версия 2.0, которая была полностью переписана и представила некоторые новые концепции, такие как виртуальный DOM и рендеринг на стороне сервера. Однако API практически не изменился, поэтому переход от версии 1.0 к версии 2.0 происходит плавно. использовать официальныйИнструмент миграциипоможет вам в процессе миграции.
Сообщество
Спустя почти год все еще активное сообщество сделало Vue.js одним из трех лучших фреймворков JavaScript, и похоже, что это не остановится.
Люди очень любят Vue. Не верьте нашим сентиментальным оценкам, посмотрите на цифры: Vue был самым популярным фреймворком на GitHub в 2016 году.
Интерес сообщества был очень сильным, когда мы запустилиVue NewsletterКогда проект был запущен, за считанные минуты на него подписались сотни человек. Постоянные уведомления по электронной почте заставляют нас чувствовать себя звездами Instagram. У первого выпуска «Информационного бюллетеня» было 759 подписчиков, а к выпуску 63 у нас было почти 6000 подписчиков. Каждый выпуск сложно подготовить, потому что каждую неделю создается много контента, связанного с Vue. Каждый день появляются высококачественные учебные пособия, проницательные статьи и каждая библиотека, которую я могу придумать, чтобы оживить. Немного сумасшедший. Это еще не все, у сообщества Vue естьактивный форумс однимканал чата, сотни разработчиков активны в нем каждый день.
Кроме того, мы можем обнаружить, что с ростом интереса разработчиков к Vue многие компании по всему миру начинают обращать внимание на Vue. нажмитеVue.js Jobs, взгляните на вакансии, которые они разместили.
экология
Стоит отметить, что помимо проектов сообщества, команда разработчиков ядра Vue также поддерживает некоторые официальные библиотеки, такие как vue-router, vue-loader, vuex (библиотека управления состоянием), vue-rx и vuex-observable для разработки RxJS. Есть также некоторые библиотеки инструментов, такие как vue-cli, vue-server-renderer, vue-loader, vetur, vue-migration-helper. Почему они важны?Потому что тогда вы можете постепенно использовать другие основные библиотеки, которые отлично работают вместе, превращая Vue в фреймворк, столь же совершенный, как Angular, Ember. Конечно, вы всегда можете переключить его части на другие неофициальные решения, если этого требует ваш проект. Еще одно преимущество официальных библиотек заключается в том, что они, как правило, обеспечивают высокое качество, долгосрочную поддержку и хорошую совместимость с Vue.
Как и следовало ожидать, в большом и активно вовлеченном сообществе, таком как сообщество Vue, будет много проектов сообщества, а не только небольших проектов, библиотек, решающих одну-единственную проблему, давайте сейчас поговорим о больших проектах, например,Nuxtjs— очень продуманный фреймворк на основе Vue, в котором используются некоторые библиотеки виджетов и шаблоны проектирования, упрощающие разработку приложений, требующих рендеринга на стороне сервера.
Каркас квазараМожет помочь в разработке сложных мобильных и настольных приложений. Существуют и другие популярные фреймворки пользовательского интерфейса, такие как:Element-UIа также Vuetify, эти фреймворки предоставляют десятки компонентов пользовательского интерфейса с единым стилем, которые помогут вам в разработке Vue. В мобильной разработке,OnsenUI(разработан Monaca) иNativeScriptмощная поддержка.
С моей точки зрения как веб-разработчика, я могу заверить вас, что Vue уже имеет все необходимое для разработки вашего приложения. Каждую неделю я наблюдаю, как выпускается все больше и больше библиотек, до такой степени, что невозможно отследить их все. ты сможешьawesome-vueНайдите эти библиотеки. Кроме того, основная команда разработчиков Vue работает надVue CuratedУправляя некоторыми рекомендуемыми библиотеками, эти библиотеки в основном используются для общих задач, таких как проверка формы, интернационализация, AJAX и т. д., чтобы избежать боязни разработчиков при выборе подходящей библиотеки.
служба поддержки
Многие люди указывали на то, что в отличие от Angular или React, Vue не имеет поддержки со стороны крупной компании, и это не кажется хорошей идеей.Я не согласен. Vue воплощает истинный дух открытого исходного кода наряду с jQuery, Babel, webpack и другими надежными инструментами в мире JS. В этом есть очевидное преимущество: вместо удовлетворения конкретных потребностей этих компаний эти проекты больше ориентированы на потребности сообщества.
Vue реализует множество функций, которые больше всего нужны сообществу. Говоря о разделении кода, Шон Ларкин, член основной группы разработчиков webpack, прокомментировал Vue следующим образом:
Первый фреймворк, использующий веб-пакет для улучшения опыта разработчиков.
Но опыт разработки намного превосходит webpack, и опыт во всех аспектах: простота использования, бесшовная интеграция, отличная документация, общая расширяемость.
Очевидно, что Vue.js, как и многие другие проекты с открытым исходным кодом, начинался как личная работа. Постепенно у него есть основная команда, работающая полный рабочий день, которая занимается поддержанием различных аспектов и экосистем.
Что насчет фонда?За последние два года, благодаря успешной работе на Patreon и Open Collective, многие люди и компании по всему миру решили спонсировать Yuxi You (автора Vue) и основную команду более чем на 10 000 долларов в месяц. Таким образом, Ю Юйси может работать полный рабочий день над разработкой Vue.
Среди спонсоров множество компаний и сотни индивидуальных спонсоров. существуетздесьВы можете видеть этих спонсоров.
взросление
Давайте более интуитивно почувствуем стремительный рост экосистемы Vue через набор чисел.
Возьмите количество звезд на GitHub, хотя это не идеальный показатель популярности проекта. Но разработчики взволнованы, и это волнение делает VueПроекты с наибольшим количеством звезд на Github в 2016 году. Не ограничиваясь категориями JavaScript или интерфейсов, это был проект с наибольшим количеством звезд в 2016 году. Через некоторое время он стал вторым по популярности интерфейсным фреймворком после React. В то же время это шестой по популярности проект на GitHub, обогнав jQuery и Angular.
Опрос переднего плана, 2016 г.Отображение: Vue — один из языков с самым высоким уровнем удовлетворенности пользователей: 89% разработчиков, использовавших Vue, заявили, что будут использовать Vue снова.
Конечно, есть и другие показатели для измерения, такие как ежемесячные загрузки на npm (около 800 000), инструменты разработчика, охватывающие 270 000 активных пользователей в неделю. Количество загрузок на npm очень мало по сравнению с количеством загрузок на React. Но стоит отметить: за прошлый декабрь количество загрузок Vue выросло в 5 раз. Учитывая нынешние темпы роста Vue, я считаю, что в ближайшие несколько лет это число будет расти еще быстрее.
На самом деле большая часть роста связана с тем, что все больше и больше компаний выбирают Vue в качестве своего основного интерфейса. Помимо этого, разработчики ценят плавную кривую обучения Vue, простоту интеграции в существующие технологические стеки и первоклассную производительность. Возможно, самым важным фактором является повышение эффективности разработки и снижение затрат на обслуживание. Другими словами, выберите Vue и сэкономьте деньги.
Но не верьте мне на слово. С этой целью мы опросили 1126 разработчиков из 88 стран и собрали ряд случаев внедрения Vue в различных отраслях.
Отчет об исследованиях разработчиков с использованием Vue.js
Нам было любопытно, как разработчики программного обеспечения и технические руководители воспринимают и используют Vue.js, поэтому мы раздали им онлайн-анкету со следующими вопросами:
- Зачем добавлять Vue в свой технический стек?
- Каковы преимущества использования этой структуры?
- Что вас больше всего беспокоит, если вы планируете использовать Vue в своем проекте?
- Какие ресурсы вы используете, чтобы освоить Vue.js?
- Сколько ваших коллег также используют Vue? Как вы думаете, увеличится ли это число в следующем году?
- Как долго вы и ваша команда используете Vue.js?
- Какие еще front-end и back-end технологии использует ваша компания?
Описание сообщаемых данных
Все данные в этом отчете взяты из четырехнедельного опроса, который мы проводили в августе-сентябре 2017 года. Мы получили в общей сложности 1126 ответов на опросы, в основном от технических руководителей и разработчиков программного обеспечения в организациях, использующих Vue (94,1% респондентов имеют соответствующую техническую работу). Респонденты приехали со всех континентов (кроме Антарктиды), всего 88 стран.
При написании этого отчета мы также консультировались с основателем Vue Юси Ю и основным членом Vue Крисом Фрицем по поводу некоторых выводов, которые предоставили нам некоторые уникальные точки зрения и поделились дополнительными знаниями.
Основные моменты
- 96%респондентов опроса заявили, что продолжат использовать Vue.js в своем следующем проекте.
- 94%респондентов используют официальную документацию Vue в качестве основного ресурса для изучения фреймворка.
- 81%Респонденты сказали, что простота интеграции Vue была основным преимуществом внедрения его в технологический стек их собственной организации.
- 54%респондентов считают, что Vue.js станет более популярным в их организациях в течение следующих 12 месяцев.
Вопросы в анкете опроса
Это самая важная причина для присоединения к Vue.js в стек технологии?
Независимо от того, создают ли разработчики новые проекты или берут на себя существующие проекты, они в основном согласны с тем, что с Vue.js легко начать работу даже для очень сложного приложения. Они отметили, что интеграция Vue.js проста благодаря простоте использования, элегантной архитектуре и продуманному дизайну. Мало того, они также утверждают, что Vue легче и имеет лучшую производительность по сравнению с другими основными фреймворками, что делает его бесспорным победителем. В основном,Более половины респондентов опроса согласились с тем, что Vue.js — довольно удобный фреймворк для начинающих.
Основные причины добавить Vue.js в свой технический стек
- Начать работу с Vue.js легко 59%
- Стек технологий необходимо обновить на 22%
- Команда хочет попробовать этот фреймворк 10%
- Другие причины 9%
Отлично подходит для существующих или новых проектов и прост в использовании!
- Технический директор, Крупное предприятие, Франция
Очень удобно интегрировать в существующие приложения или реализовать чистое одностраничное приложение.
- Разработка программного обеспечения, средний бизнес, Австралия
Какие опасения возникли у вас и вашей команды при рассмотрении вопроса о добавлении Vue.js в технический стек?
Респонденты назвали две основные проблемы в этом вопросе. Первый пункт касается членов их собственной команды, которых 45% респондентов назвалиОтсутствие опыта работы с Vue., и это будет проблемой, с которой они могут столкнуться при рассмотрении вопроса о добавлении Vue.js в стек технологий.
Опасения при рассмотрении вопроса о добавлении Vue.js в технический стекВопрос с несколькими вариантами ответов, поэтому результаты в сумме составляют более 100%.
- Коллегам не хватает опыта работы с Vue.js 45%
- Не уверен в будущей тенденции фреймворка 45%
- Отсутствие зрелых актуальных собственных платформ для разработки приложений 23%
- Обеспокоены масштабируемостью фреймворка 15%
- Другие опасения 12%
Поддержка Vue на мобильных устройствах постоянно улучшается. Vue теперь имеет отличную поддержку прогрессивных веб-приложений, включая наши надежные шаблоны. Проекты сообщества, такие как пользовательский интерфейс Onsen, упрощают процесс создания нативных гибридных пользовательских интерфейсов.
— Крис Фриц, основной разработчик Vue.js.
Теперь у нас есть Weex и NativeScript (переводчик добавлен: для поддержки разработки нативных приложений), но мы также признаем, что в обоих есть много возможностей для улучшения. На самом деле Weex уже давно используется Alibaba для онлайн-разработки, а также является ее основным выбором в области разработки мобильных телефонов. Но Weex не хватает некоторых документов и учебных материалов на английском языке. Чтобы компенсировать это, мы также готовимся предоставить официальное руководство по разработке Weex с Vue в течение следующего года. (Переводчик добавил:Учебник на официальном сайте)
NativeScript также является очень зрелой технологией, и хотя ее интеграция с Vue относительно молода, она каждый день делает впечатляющие успехи. Поэтому, если вы заинтересованы в использовании Vue для разработки нативных приложений, обратите внимание.
— Джу Юйси, основатель Vue.js
Отсутствие зрелой собственной платформы для разработки приложенийАналогичный процент респондентов упоминал об этом, и это также беспокоило их перед добавлением Vue.js в технический стек.
172 респондента отметили опасения по поводу масштабируемости Vue.js, что сделало этот вариант одной из пяти основных причин, мешающих разработчикам использовать Vue.js.
Разработка Vue основана на модели компонентизации, которая также является шаблоном проектирования, подходящим для разработки пользовательского интерфейса, который используется всеми основными фреймворками. Для одностраничных приложений Vue предоставляет официально поддерживаемую библиотеку маршрутизации, которая также поддерживает крупномасштабное управление состоянием. Vue разработан, чтобы быть легким и простым в использовании, но мы также разработали его для поддержки масштабирования.
С помощью Vue было создано много успешных крупномасштабных проектов, некоторые из которых даже состояли из нескольких сотен компонентов и до сих пор работают без сбоев. Также стоит упомянуть, что некоторые существующие крупномасштабные приложения переписываются на Vue, и мы получили очень положительные отзывы от разработчиков этих приложений, таких как Adobe Portfolio и JSFiddle.
- Ю Юси
Каковы самые большие преимущества использования Vue.js для вашей организации?
81% разработчиков подчеркнули простоту интеграции Vue.js, это соотношение ошеломляет. Большинство респондентов отметили, что освоить Vue легко, и это проще, чем в других основных фреймворках. Они также хвалилиИнтеграция с бэкэнд фреймворками тоже не сложная.
60% разработчиков также упомянули документацию Vue как изюминку. Сходный процент респондентов (56%) назвал превосходную производительность платформы своей самой сильной стороной.
Самое большое преимущество VueМножественный выбор, результаты в сумме составляют более 100%
- Простота интеграции 81%
- Подробная документация 60%
- Отличная производительность 56%
- Идти в ногу со временем 49%
- Сообщество активно 29%
- Прочие преимущества 4%
Vue.js имеет плавную кривую обучения, и многие люди заинтересованы в этом.
- Advanced Development, Medium Enterprise, Новая Зеландия
Раньше у нас был выбор между React и Vue, и в итоге мы выбрали Vue, и мы очень довольны своим выбором по сей день.
- Разработка программного обеспечения, средний бизнес, США
Vue.js упрощает управление и расширение фронтенд-разработки. Обучение не слишком дорогое, что позволяет бэкенд-разработчикам понимать интерфейсную сторону без особых указаний. Использование Vue теперь немного похоже на установку плагина, поскольку существует так много полезных конфигураций, связанных с веб-пакетами. И последнее, но не менее важное: мы можем использовать Vue.js как во время выполнения, так и во время компиляции, это действительно отличный инструмент, его не так уж сложно масштабировать для небольших или больших приложений.
- Разработка программного обеспечения, небольшая компания, Филиппины
У вас есть предложения по Vue.js?
Мы получили 481 правильный ответ на этот открытый вопрос. Поскольку некоторые предложения были упомянуты более чем 20 людьми, мы решили перечислить еще несколько распространенных предложений, а затем открыть вопрос с одним вариантом ответа.
Отсутствие собственных решений для разработки, связанных с Vue, было одной из самых больших проблем, на которую указали 24% респондентов. без сомнения,Vue.js нужно более продвинутое и полное мобильное решение.
15% респондентов на этот вопрос указали, что у Vue тоже есть проблема с егоЭкологическая среда относительно невелика.. Если его экологическая среда может быть сильнее, он должен иметь возможность создавать лучшую библиотеку компонентов.
Помимо,
Инструментарий Vue также улучшится со следующим обновлением CLI.— заверил Юйси.
В этих ответах также упоминалось, что Vue не хватает какого-либо официального руководства (один респондент назвал его «Библия Vue») или руководства по эксплуатации, которое содержит больше реальных примеров, особенно для сложных приложений. Христос Фриц отметил,
сейчас опубликованоОфициальное руководство по стилюЧто-то вроде библии Vue, но на момент исследования ее не было.
Другое предложение заключается в том, чтоФреймворк нуждается в лучшей документации. 53 респондента упомянули некоторые проблемы, которые были непосредственно связаны с предложением (например, предложение предоставить больше документации по архитектурному проекту для создания большого приложения с помощью Vue), и проблемы, которые не были напрямую связаны с предложением, например некоторые, которые они ошибочно считали. не может быть решен с помощью Vue. Более 20 респондентов указали на две проблемы: одна — на необходимость усиления инструмента тестирования, а другая — на необходимостьОптимизация основной библиотеки.
Рекомендации для Vue.js
- Требуется более продвинутое и полное клиентское решение Vue для нативных приложений 116 голосов
- Нужна более сильная экологическая среда, может предоставить лучшие библиотеки компонентов и наборы инструментов 74 голоса
- Необходимы официальные учебные пособия и другие соответствующие учебные ресурсы, чтобы обеспечить больше реальных случаев и лучших практик (особенно связанных со сложными приложениями) 67 голосов
- Нужна лучшая документация для более плавной разработки приложений 53 голоса
- Нужны лучшие инструменты и библиотеки для тестирования 37 голосов
- Оптимизировать основную библиотеку 21 голос
С ноября мы будем работать над руководством, чтобы предоставить примеры для создания крупномасштабных приложений, общие сценарии интеграции и изучение архитектурных проектов.
— Крис Фриц
Насколько вероятно, что вы снова будете использовать Vue при разработке следующего проекта?
Превосходить95% респондентов утверждают, что будут использовать Vue в своем следующем проекте. После того, как многие разработчики дали понять, что использовали фреймворк, их прежние опасения больше не были проблемой. Несмотря на то, что они все еще указывали на некоторые недостатки и области для улучшения, почти все хвалили фреймворк после его использования. В то же время подавляющее большинство респондентов решили по-прежнему использовать Vue в своем следующем проекте.
Возможность использовать Vue в следующем проекте
- 5 (очень высокий) 82,9%
- 4 12.5%
- 3 3.5%
- 2 1%
- 1 (очень низкий) 0,1%
Как долго ваша организация использует Vue.js?
По мере того, как сообщество Vue растет, по всему миру бесконечно появляются тщательно продуманные связанные проекты, и оно также входит в число самыхСписок 10 лучших репозиториев со звездами на GitHub, Vue получает все более широкое признание.Более 3/4 респондентов добавили Vue.js в свой технический стек за последний год..
Мы можем предвидеть быстрый рост числа разработчиков, использующих Vue в ближайшие несколько лет, в то время как сам фреймворк продолжает развиваться, его экосистема будет продолжать укрепляться, а вариантов использования будет все больше и больше.
Как долго ваша организация использует Vue.js?
- Менее 6 месяцев 45%
- 6–12 месяцев 34%
- 1–2 года 19%
- 2% в течение 2 лет
Какие ресурсы вы будете использовать при изучении Vue.js?
Официальная документация Vue является наиболее часто используемым справочным ресурсом.Его проверяют 94% разработчиков программного обеспечения, что свидетельствует о том, что хорошо продуманный документ является основным ресурсом для изучения любого фреймворка. Кроме того, 70% опрошенных разработчиков программного обеспечения также выбрали онлайн-литературу, технические блоги, некоторые сообщества, такие как StackOverflow или официальный форум Vue, в качестве источника знаний. Онлайн-курсы предпочитают 41% разработчиков, при этом менее четверти из них выбирают обучение на рабочем месте и книги по теме.
Учебные ресурсы для Vue.jsМножественный выбор, результаты в сумме составляют более 100%
- Официальная документация 94%
- Интернет-литература и блоги 78%
- Интернет-сообщество (например, StackOverflow, официальный форум Vue) 72%
- Онлайн курсы 41%
- 22% обучение на рабочем месте
- 12% книга
- другие 5%
Как вы думаете, вырастет ли процент сотрудников вашей организации, использующих Vue.js, через год?
54% респондентов считают, что Vue.js станет более популярным в их организации в течение следующего года.Однако те разработчики, которые работают на крупных предприятиях (более 1000 сотрудников), более уверены в том, что Vue будет широко принят в их компаниях: 76% респондентов ответили утвердительно.
Будет ли расти процент сотрудников, использующих Vue.js?
- 5 (абсолютно) 33%
- 4 21%
- 3 24%
- 2 11%
- 1 (абсолютно нет) 11%
Остальные проекты компании собираются использовать Vue (и даже начали).
- Разработка программного обеспечения, крупное предприятие, Франция
Мы расширяем нашу регистрацию как сумасшедшие, и впереди много проектов. Эти проекты будут разрабатываться с использованием Vue.js.
- Технический директор, Крупное предприятие, Германия
Каковы ваши основные фронтенд-технологии и фреймворки?
В основном используемый интерфейсный фреймворкМножественный выбор, результаты в сумме составляют более 100%
- Vue.js 33%
- Angular 21%
- ReactJS 24%
- Другие 11%
- Backbone 6%
Какие серверные технологии и фреймворки вы в основном используете?
В основном используемые внутренние языки и фреймворкиМножественный выбор, результаты в сумме составляют более 100%
- PHP 53%
- Node.js 45%
- Java 18%
- C#/.Net 17%
- Python (Django, Flask и др. фреймворки) 17%
- Ruby (фреймворки, такие как Rails) 10%
- другие 8%
Данные следователя
Мы опросили 1126 разработчиков программного обеспечения, технических директоров и других технических специалистов из 88 стран, знакомых с Vue.
Размер компании (количество сотрудников)
- Малый бизнес (менее 100 человек) 77%
- Средние предприятия (100-999 чел.) 15%
- Крупные корпорации (более 1000 человек) 8%
Размер команды (количество участников)
- Небольшие команды (2-10 человек) 73%
- Физические лица 17%
- Средняя команда (11-25 человек) 8%
- Большие команды (более 25 человек) 2%
Функции, выполняемые в организации
- Разработка программного обеспечения 66%
- Технический директор 20%
- Другие техники 8,5%
- Менеджер проекта 4%
- Другое 1,5%
тематическое исследование
Этот отчет о состоянии Vue.js был составлен, чтобы продемонстрировать с помощью множества данных, что Vue стала зрелой технологией, принятой компаниями всех видов и размеров. Каждое тематическое исследование доказывает, что Vue подходит для коммерческого использования. Мы опросили шесть компаний, которым было сложно выбрать подходящий фреймворк, несмотря на то, что они находились на разных стадиях разработки и имели разные цели, но все они остановились на Vue.
До объединения Codeship и Vue их пользователи сталкивались с Carton или даже сбоем браузера. Слишком много пользователей недовольны своими приложениями. Их истории хорошо подтверждены, и Vue может эффективно помочь создать безопасные, надежные, простые в обслуживании и иметь защитные приложения.
Если вы ищете отличный кейс корпоративного уровня для Vue.js, вам пригодятся кейсы Behance и Adobe Portfolio. Их команда создала два отдельных продукта с нуля, используя Vue, и не собирается останавливаться на достигнутом.
В случае с Livestorm соучредитель и генеральный директор Livestorm Жиль Берто описывает, как они создали прибыльный продукт с нуля. Благодаря Vue и его многоразовым компонентам их разработка стала быстрее и проще.
Руководитель внешнего интерфейса GitLab Джейкоб Шац объясняет, почему они решили перейти от технологии jQuery к Vue.js, и рассказывает об основных проблемах, с которыми они столкнулись. Они фокусируются на лучшем UX (пользовательском опыте), что делает их продукт более желанным и, как следствие, увеличивает продажи.
Chess.com приходилось иметь дело с трудным для поддержки устаревшим кодом в проектах Angular 1. Они обнаружили, что Vue.js упростил совместную работу команд из 15 удаленных разработчиков. Chess.com — это платформа с масштабной инфраструктурой, обслуживающая 19 миллионов пользователей по всему миру. В их случае вы увидите, как Vue.js решил их проблемы.
Последний случай сильно отличается от остальных. Сильвен Симао, технический руководитель Clemenger BBDO в Мельбурне, объясняет, как разрабатывать краткосрочные проекты от 4 до 12 недель с помощью Vue.js. Работа с жесткими циклами доставки, большим количеством анимаций и специальных эффектов, которые необходимо реализовать, а также с высокими требованиями к производительности для активных страниц — их самые большие проблемы.
Behance и портфолио Adobe
BehanceЭто лидер онлайн-платформы для демонстрации и поиска творческих работ.Adobe PortfolioНастраиваемая платформа, которая позволяет (пользователям) создавать свои собственные веб-сайты для демонстрации творческих работ.
Мы колебались, потому что в то время не так много крупных компаний использовали Vue. Однако всякий раз, когда я сталкиваюсь с проблемой (обычно из-за чрезмерного размышления), я приятно удивлен, что Vue решает ее так легко.
—— Эрин Депью, инженер-программист Behance Юрий Немцов, инженер-программист и менеджер, Behance Мэтт О'Коннелл, инженер-программист, Adobe Portfolio
испытание
Переходите от собственных решений к технологиям с открытым исходным кодом. Поддерживайте хороший пользовательский опыт и высокую производительность. Возможность совместного использования компонентов между другими командами и проектами.
решение
Передали интерфейсные группы Behance и Adobe на Vue.js. Используйте Vue.js для переноса существующей кодовой базы.
достижение
Сайты могут быть перенесены без каких-либо проблем, без необходимости начинать с нуля. Легко интегрируйте существующие кодовые базы. Высокая производительность и низкая стоимость.
испытание
Behance, дочерняя компания Adobe, уже много лет использует новейшие технологии и дизайнерское мышление для создания революционных продуктов, которые объединяют творческий мир и расширяют его возможности.
Команда решила использовать фреймворк с открытым исходным кодом, поскольку они начинают ограничиваться собственными технологиями, которые они уже используют.
Юрий объяснил, что до Vue мы использовали MVC-фреймворк собственной разработки, основанный на Hogan.js (усы) и jQuery. Наша структура не может отображать DOM декларативно, что вынуждает нас вручную синхронизировать данные с DOM. Он также не может абстрагировать функциональность на компоненты, контролирует односторонний поток данных и не имеет исчерпывающей документации. Поэтому, несмотря на то, что мы использовали его в течение нескольких лет, мы решили перейти на техническое решение, которое позволило бы нам быстро строить, уменьшать количество ошибок, снижать затраты и быстро приступать к работе.
Усы были особенно важны для нас, потому что мы использовали одни и те же шаблоны как для внешнего, так и для внутреннего интерфейса (и до сих пор используем в большинстве проектов behance.net). Использование Mustache для быстрой доставки в верхнюю часть страницы браузера очень важно для нас и наших пользователей. Если мы будем ждать, пока браузер скачает JS, пропарсит, скомпилирует и выполнит его перед тем, как отобразить страницу пользователю, очень сложно добиться такой же скорости, как при использовании Mustache. Мы также специально искали фреймворки с возможностями рендеринга на стороне сервера.
Для команды Behance главная цель состояла в том, чтобы создать простую в использовании кодовую базу с прочной основой для новых функций, которые будут добавлены в будущем.
Я думаю, что самая большая проблема, с которой мы столкнулись, заключалась в том, что, поскольку мы решили не дробить нашу кодовую базу и начать с новой платформы, нам пришлось потратить много времени на извлечение старого кода для формирования новых компонентов. Эрин добавила, что было очень сложно сбалансировать необходимость рефакторинга старого кода с помощью Vue, поддерживая работу остальной части сайта и внедряя новые функции.
Мы очень серьезно относимся к производительности Behance, поэтому уделяем большое внимание сохранению показателей производительности при переносе нашей кодовой базы.
Пользовательский опыт также является важным моментом для Мэтта и его команды, и есть много возможностей для улучшения.
Для Adobe Portfolio мы начали с nbd.js, пользовательской версии Backbone под названием «онлайн-операции», взятой из оригинального продукта, который мы больше не поддерживаем, и который мы использовали для создания модулей для сети Behance. Мэтт добавляет, что у него есть ограничения на реактивные системы, поэтому мы создали «реактивную» часть с помощью Ractive.
В случае с Behance самой большой проблемой до сих пор было обеспечение быстрого взаимодействия с пользователем в условиях сложного управления состоянием пользовательских данных, гарантируя при этом мгновенную обратную связь по содержанию и стилю сайта.
решение
Adobe Portfolio и Behance переобучили свои существующие команды для использования Vue.js в повседневной работе вместо того, чтобы формировать новую команду, ориентированную исключительно на Vue.js.
Подавляющее большинство команды было здесь до того, как мы перешли на Vue. Как только мы решили внедрить Vue, нам понадобилось несколько небольших проектов, чтобы попрактиковаться. Для нас это просто очень маленький интерфейсный сайт, который не является общедоступным, как и наше руководство по стилю. Таким образом, мы можем узнать, как использовать Vue, как писать тесты и относительно безопасно стилизовать наши компоненты. Только тогда мы сможем безопасно инвестировать в более крупные проекты. Мы начали создавать Behance Live с помощью Vue, — вспоминает Юрий.
В проекте Portfolio наша фронтенд-команда из 9 человек начала использовать Vue. Некоторые из наших серверных разработчиков также начали изучать Vue. Мэтт объяснил, что около 8 фронтенд-разработчиков продукта Behance работают с Vue.
У двух команд есть некоторое функциональное совпадение (Adobe Portfolio и Behance). Эрин добавляет, что у нас много общих библиотек и API в наших кодовых базах, и некоторые функции часто требуют совместной работы двух сайтов.
Команда Behance столкнулась со многими трудностями при определении общего подхода к созданию приложения и определению ролей различных компонентов.
Для более крупных приложений хранилища vuex также сложно построить. Мы решили использовать модули пространства имен. Сначала не было ясно, что должен быть один модуль хранения для каждого маршрута/страницы или типа данных (например, пользователя или элемента). Создание определенного хранилища маршрутов означает, что операции по маршрутам нельзя будет использовать повторно. Для нас было лучшим решением сделать их данными-свойствами с модулем хранилища маршрутизации верхнего уровня, который объединяет модули, необходимые для маршрутизации. Однако это решение не идеально. — задумчиво сказал Юрий.
Чтобы определить роли различных компонентов, мы различаем компонент «страница» (первый компонент, на который указывает маршрутизатор, который также взаимодействует с vuex) и компонент марионетки (который только отправляет свойства дочернему компоненту). компонентов и передает события родительским компонентам).
После почти 1 года использования Vue.js Мэтт и его команда, наконец, создали и провели рефакторинг множества функций.
В Adobe Portfolio мы начинаем с возможностей управления контентом. Курирование контента позволяет пользователям изменять порядок, добавлять, удалять и т. д. на их собственном сайте-портфолио. «Основываясь на требованиях, мы создали многократно используемые компоненты пользовательского интерфейса, такие как раскрывающиеся списки выбора, воздушные окна, переключатели и списки перетаскивания», — сказал Мэтт.
достижение
По словам Эрин, Vue легко интегрировать с существующей кодовой базой Behance благодаря своей продвинутости и гибкости.
Я всегда говорю, что каждый фреймворк — это просто еще один инструмент. Однако, помимо быстрой и удобной для чтения документации, самым большим преимуществом использования Vue является то, что его можно интегрировать в существующую кодовую базу. В отличие от других фреймворков, основанных на компонентах, Vue дает нам возможность встраивать компоненты в существующие страницы, позволяя нам обновлять сайт в своем собственном темпе, а не заменять их все.
Я бы сказал, что Vue превзошел наши ожидания. Мы колебались, потому что немногие крупные компании используют Vue. Однако всякий раз, когда я сталкиваюсь с проблемой (обычно из-за чрезмерного обдумывания), я приятно удивляюсь, что Vue может легко ее решить. сказала она с улыбкой.
В настоящее время мы планируем преобразовать весь наш код Behance в Vue и, конечно же, рекомендовать Vue другим командам Adobe.
Юрий считает, что Vue.js предлагает столько возможностей разработчикам как любые другие рамки. Однако это облегчает развитие ... и дешевле, чем некоторые рамки.
Я не осмелюсь сказать, что Vue может помочь вам сделать то, чего не могут другие фреймворки. Однако с React улучшить производительность SSR действительно сложно. До перезаписи Fiber (React v16) страница с огромным деревом компонентов блокировала основной поток, что, в свою очередь, означало, что если на отрисовку страницы уходило 100 мс, все остальные клиенты сервера Node могли только ждать. . Следовательно, нам нужно увеличить количество процессов для одного сервера или увеличить количество серверов для увеличения пропускной способности. Это сложно поддерживать и очень дорого. Ситуация с SSR у Vue намного сильнее. Vue имеет встроенное кэширование и потоковую передачу, поэтому Behance Live работает хорошо даже без значительных оптимизаций.
Использование Vue.js определенно отличается от использования других фреймворков. Так или иначе, вы влюбитесь в него.
Chess.com
Chess.com — шахматный онлайн-сайт №1. Игроки всех уровней со всего мира играют более 1 миллиона игр в день. Chess.com — это команда из 100 человек, работающая полностью удаленно.
Это первый раз, когда я прочитал всю документацию за один присест. Сейчас 1:30 ночи. Когда я прочитал это, я понял, что Vue.js — это что-то особенное. В нем есть что-то уникальное. Что-то, чего я никогда раньше не видел.
Скотт О'Брайен, главный инженер по взаимодействию с пользователями, Chess.com
испытание
Обработка сложного в обслуживании устаревшего кода Angular 1.
Внедряйте новые функции, чтобы повысить вовлеченность пользователей.
Управляйте изменениями в полностью распределенной команде разработчиков.
Решение
Сравните все доступные фреймворки.
Переход с Angular 1 на Vue.js.
Создавайте растущую библиотеку компонентов (вместе с модульным CSS).
достижение
Делает удаленную командную работу более приятной.
Написание CSS в приложении более эффективно.
Масштабируется более эффективно с точки зрения скорости, мощности и абстракции, чем другие фреймворки.
испытание
Chess.com — самый посещаемый шахматный сайт с огромной социальной сетью, насчитывающей 19 миллионов пользователей. В нем есть новости, блоги, сообщество, учебные пособия, головоломки и, конечно же, живые игры. Сложность веб-порталов огромна.
Унаследованный код написан на PHP и Angular 1. В любой момент на Chess.com проходят тысячи боевых игр в реальном времени в Интернете или на мобильных устройствах. Для такого веб-сайта производительность на первом месте.
Мы уже знаем, что использование Angular 1 является огромным узким местом в производительности. Эта проблема будет становиться все больше и больше. С точки зрения производительности некоторые части нашего веб-сайта стали непригодными для использования на некоторых устаревших аппаратных устройствах. Это было невозможно поддерживать, вспоминает Скотт.
Задача Chess.com заключалась не только в работе с существующими функциями, но и в планировании новых функций.
«Большая часть обсуждения касалась архитектуры, потому что мы знали, что нам нужно добавить много новых функций, чтобы пользователи могли играть в больше игр и опробовать различные способы игры», — объяснил Скотт.
Я не говорю, что это невозможно сделать с Angular, просто это сложно сделать с этими устаревшими фреймворками javascript.
Чтобы улучшить взаимодействие с пользователем, Chess.com необходимо внести некоторые существенные изменения.
Я знаю, что нам нужен качественный скачок. На какой фреймворк перейти с Angular 1, мы долго думали. Конечно, мы имеем в виду двух больших парней: Angular 2 и React.
Огромная инфраструктура и постоянное развитие продукта требуют хорошо организованной и масштабной команды.
В нашей команде разработчиков есть различные стеки технологий. Кроме того, наша команда полностью распределена и интернациональна. Любому столь важному решению, как переход на новую технологию, уделяется много внимания.
Решение
Выбор фреймворка, поддерживаемого Facebook или Google, такого как React или Angular, кажется относительно безопасным. Тем не менее, сообщество Vue.js доказало, что этот новичок является сильным соперником.
Мы так заботимся о производительности, что можем выбирать фреймворки, которые не очень удобны для разработчиков, но хорошо выглядят в тестах. «Отрадно видеть, что Vue.js побеждает в тестах рендеринга и производительности», — объяснил Скотт.
Нас беспокоит то, что весь Vue.js построен на идеях Эвана, а фреймворк живет и умирает благодаря ему. Мы решили, что пока сообщество быстро растет и мы верим, что они делают что-то революционное, мы возьмем на себя инициативу и будем уверены, что другие увидят в этом ценность в будущем так же, как мы видим ее сейчас. Так что большой вопрос в том, будет ли он продолжать развиваться, что, я думаю, подтвердилось.
Одной из первых вещей, которую сделала команда Chess.com, была переписывание различных страниц с AngularJS на Vue.
Переписывание все еще продолжается и продолжается уже несколько месяцев. Другая наша задача — создать внутренний набор повторно используемых компонентов, — отмечает Скотт.
Я подумал, что было бы очень здорово использовать Vue для создания постоянно растущей библиотеки компонентов, каждый со своим собственным модульным CSS, из которых в конечном итоге будут созданы все элементы пользовательского интерфейса на нашем веб-сайте. Одна команда использовала Vue для реализации компонентов, маршрутов и хранилищ для определенных областей продуктов, в то время как другая команда работала над созданием библиотеки компонентов для всего сайта, не опасаясь конфликтов. Кроме того, это делает наши обсуждения продуктов более абстрактными и многоразовыми.
достижение
Для такого крупного приложения, как Chess.com, Vue дает больше преимуществ, чем что-либо еще.
Однофайловые компоненты определенно подходят для создания и обслуживания нашей библиотеки, что позволяет командам инвестировать только в те части фреймворка, которые имеют официальную систему управления состоянием. Мы верим, что эти вещи будут работать вместе — все это часть коллективного видения.
Благодаря Vue.js Скотту стало проще работать с удаленными командами.
Он отметил, что нам нравится Vue за его невероятную простоту использования и низкий барьер для входа, а также масштабируемость, сравнимую (если не лучшую) мощность, скорость и абстракцию, чем у других библиотек компонентов.
Мы полностью удаленная команда из 15 разработчиков, и мы в значительной степени полагаемся на Slack, Jira и GitHub. Однако в Vue легче сотрудничать, потому что он не слишком отличается от нашего устаревшего кода — там все еще есть декларативные шаблоны и все, к чему мы привыкли.
Во-вторых, простота написания CSS просто потрясающая. Это принесло нам большую пользу. У нас есть много разработчиков, которые говорят на разных языках и используют разные стили программирования, и им просто нужно именовать теги для конкретных файлов и не нужно беспокоиться о коллизиях имен в глобальном пространстве имен. Простота использования кажется такой замечательной.
Учитывая огромную поддержку, которую Vue оказал команде Chess.com, они, несомненно, продолжат использовать его в будущем.
Мы все сейчас используем Vue.js! Как я уже сказал, наша работа состоит из двух частей: рефакторинг наших компонентов и переход с Angular 1. Так что мы гордимся тем, что делаем это двумя совершенно разными способами одновременно.
Clemenger BBDO
Clemenger BBDO — это агентство с полным спектром услуг, предлагающее полный набор возможностей, включая стратегию бренда, комплексное творческое развитие, CX, цифровые услуги, CRM, PR, дизайн, работу с клиентами и активацию.
За последние 12 месяцев оно было названо самым креативным агентством в мире по версии Cannes Advertising and Creative Awards.
Мы решили выбрать Vue.js, потому что он удовлетворил все потребности, представленные нашим проектом, и в то же время предоставил удобную среду разработки для нашей команды. Он очень близок к нативному JavaScript, поэтому с ним легко начать.
Сильвен Симао, технический директор Clemenger BBDO, Мельбурн
испытание
Цикл проекта короткий (от 4 до 12 недель) и разрабатывается несколькими людьми.
Используйте эффекты анимации и перехода.
Загружается и работает быстрее на мобильных устройствах.
решение
Используйте схему предварительной загрузки Vue.js для статических страниц.
Создавайте модули ES6 вместо кода, специфичного для фреймворка.
достижение
Проводите несколько успешных интерактивных кампаний вовремя.
Цифровые проекты с высокой посещаемостью.
Быстрая адаптация и инициализация программы.
испытание
Большинство проектов Clemenger BBDO — это веб-сайты мероприятий. Большинство из них являются интерфейсными (с небольшой частью серверных), и в большинстве проектов используются бессерверные подходы, API, сервисы AWS и т. д.
При одновременном выполнении нескольких проектов со строгим графиком Clemenger BBDO пришлось разработать стандартный набор решений, который значительно увеличил бы скорость разработки и был достаточно гибким для использования в разных проектах.
Как технический руководитель, я должен помнить одну вещь: способность моей команды выполнять высококлассные высококачественные проекты за короткий период времени. «Мы рекламное агентство, а это значит, что трехмесячный проект — это очень долго», — объяснил Сильвен.
Быстро меняющаяся среда означает, что нам нужно, чтобы люди могли быстро осваивать новые инструменты. Иногда нам также необходимо работать с внешними подрядчиками, поэтому идеальное решение для нас — это то, с чем легко учиться и с чем работать. Vue дает нам большую гибкость с точки зрения рабочего процесса — например, возможность работать с препроцессорами, которые уже знают HTML и CSS, является большим плюсом.
В клиентском проекте Сильвен и его команда используют разные фреймворки JavaScript.
Думаю, мы все это пробовали!» Сильвен смеется.
Мы попробовали некоторые фреймворки, такие как Angular, React и Riot.js. Но Vue оказался в нашу пользу. Vue прост, но надежен. Для нас это был глоток свежего воздуха. У него богатая экосистема, и это постепенно адаптируемый инструмент, что делает его идеальным инструментом для той работы, которую мы выполняем.
Интерактивные сайты событий полны проблем.
Вы должны иметь дело с SEO, доступностью и совместимостью с браузерами, а также реализовывать общую анимацию, переходы и множество взаимодействий. Это, несомненно, самые сложные аспекты нашей работы.
решение
Благодаря плавной кривой обучения Vue.js может легко использоваться новыми разработчиками или внешними подрядчиками.
Мы заметили, что Vue.js отлично справляется с обучением новичков. Почему? Потому что кривая обучения очень гладкая и очень близка к нативному JavaScript, сказал Сильвен.
Это было действительно здорово для нашего бизнеса. Люди могут очень быстро получить новейшую скорость, а мы можем работать более эффективно. Еще один момент, на который стоит обратить внимание, — это невероятное качество официальной документации и ресурсов Vue. Вероятно, он заслуживает награды за самую простую для понимания документацию по фреймворку!
Для каждого веб-сайта, который обслуживает Клеменгер, важно SEO.
Для этой конкретной проблемы мы делаем пререндеринг для всех наших страниц. В большинстве случаев, когда у нас есть новый проект, требующий Vue.js, мы начинаем с шаблона, созданного поверх официального шаблона веб-пакета Vue. Затем мы используем библиотеку, например PhantomJS или Prep, для рендеринга статического снимка страницы. Наконец, с помощью инструментов пользовательского агента, таких как Nginx или Lambda@Edge, эти страницы легко обслуживать поисковые роботы.
Sylvain использует Vue.js, чтобы иметь дело с анимацией и переходами.
Теперь мы меняем способ реализации анимации. Поскольку была выпущена последняя версия Vue, переходы стали более гибкими. Теперь у нас есть более детальный хук перехода, который позволяет запускать сторонние библиотеки и реализовывать сложные анимации, при этом по-прежнему используя Vue в основе. Я пытаюсь подтолкнуть свою команду к этой модели.
Для дизайна мероприятия Airbnb — «Пока мы все не будем принадлежать» — выбрана технология Vue.js.
Изначально проект разрабатывался как одностраничное приложение на основе Vue и webpack. Для эффективности веб-страницы размещаются в корзине Amazon S3, что означает, что мы не можем использовать какой-либо рендеринг на стороне сервера. Каждая часть пользовательского интерфейса и каждая страница построены с использованием отдельных файловых компонентов Vue. На таком сайте, где ожидается большой трафик, ключевым фактором является производительность, поэтому все загружается по запросу. Один из наших проектов зафиксировал 6000 посещений в минуту — много. Нам нужно быть готовыми, объяснил Сильвен.
В этом случае спасением является Vue.js. Для проекта Airbnb в фоновом режиме есть большие изображения, которые необходимо загрузить и анимировать. Для этого мы используем Vue-router для объявления ресурсов или данных, которые необходимо предварительно загрузить, а VueX позаботится об отслеживании контента на каждой странице. Проект также был сложен в интерактивном режиме, но мы успешно запустили сайт в течение 6 недель.
достижение
С Vue.js намного проще сдавать проекты вовремя.
Если бы не Vue, мы бы не были такими быстрыми. В основном из-за простоты API. Недавно мы создали прототип гибридного приложения на основе Angular 2, синтаксис у него элегантный, но кривая обучения крутая, а простые вещи требуют времени. С Vue вы можете быстро создавать прототипы, что, вероятно, является его самой сильной стороной.
С Vue команда Clemenger может работать над множеством различных проектов.
Сейчас у нас есть довольно много проектов, построенных на основе Vue.js. Австралийская кампания Airbnb «Пока мы все не будем принадлежать» получила ряд отраслевых наград, в том числе AWWWARDS и CSSDA. Еще один проект - Знакомьтесь, Грэм, который знакомит с единственным человеком, призванным выжить на наших дорогах, Грэмом. В течение первой недели проект зафиксировал более 10 миллионов просмотров страниц и получил признание и освещение в СМИ. Он получил признание критиков и получил множество наград, в том числе Гран-при Каннского кинофестиваля 2017 года. Одним из наших недавних проектов был Snickers Hungerithm, и на этот раз мы решили переписать приложение для мероприятий на Vue для глобального развертывания. Hungerithm — это алгоритм распознавания голода, который отслеживает настроения в сети с помощью твитов. Когда голод растет, цена батончика Snickers падает в режиме реального времени.
Codeship
Codeship — это платформа непрерывной интеграции, позволяющая уверенно публиковать приложения в облаке. Проекты с открытым исходным кодом на Codeship всегда бесплатны.
Vue дает нам необходимую гибкость, чтобы делать все, что мы хотим. Он закладывает прочную основу, поэтому мы можем расширять его по своему усмотрению, это не просто инструмент, который мы используем для достижения наших целей. Вот почему нам это так нравится.
От Романа Кубы, руководителя фронтенда Codeship.
испытание
Зависает и вылетает в приложении. Модульное тестирование с Angular очень сложно. Амбициозные планы на новые функции и создание новых сложных вещей.
решение
Создайте Proof of concept и убедите других разработчиков попробовать Vue.js. Только приемочные испытания. Рефакторинг и рерайтинг страниц.
выход
С момента реализации Vue.js не произошло сбоев приложений. Пуленепробиваемый, надежный, простой в обслуживании код. Получите положительные отзывы от клиентов, которые довольны текущим пользовательским интерфейсом.
испытание
Codeship — это платформа CI, запущенная в 2010 году и используемая такими компаниями, как CNN, Red Bull и Procuct Hunt. Используя jQuery и CoffeeScript в своем техническом стеке, они создали успешную платформу для разработчиков по всему миру.
Но со временем команда поняла, что пора найти новую технологию для поддержки долгосрочной разработки и облегчения создания более сложных вещей.
Чтобы дать вам некоторое представление: большое количество клиентов полагаются на Codeship в своих повседневных операциях. Когда мы работаем над новой функцией, на что обычно уходит четыре месяца, это как-то не очень хорошо, как будто мы что-то забираем у клиента. Но если мы тратим два месяца на разработку функции, получается наоборот, что часто означает два месяца мучений и никакой ответственности перед клиентами. Быстрая и надежная доставка продукции имеет для нас первостепенное значение. Роман так сказал.
У нас есть страницы, которые полностью получают вывод терминала в виде читаемого журнала для наших пользователей, чтобы они могли видеть, какие тесты пройдены и какую информацию о тестах. Как и наш предыдущий продукт с использованием jQuery, его пришлось урезать по причинам, которые становились все более и более сложными, и контраст был очевиден. Роман задумался.
Мы использовали Angular 1 в течение следующих шести месяцев. Просто потому, что мы более знакомы с ним.
Компания перешла на Angular, и он хорошо адаптировался. Однако по мере того, как сервис рос, мы обнаружили, что вряд ли будем придерживаться его в долгосрочной перспективе.
Одна вещь, которую мы пытались улучшить, — это производительность. Это огромная проблема в Angular. Объем данных, которые нам нужно отобразить на странице, которую мы создаем, намного больше, чем может обработать Angular. Клиенты сообщали о серьезных проблемах — страницы не отвечали, а у некоторых даже возникали зависания и сбои браузера.
Тем не менее, Роман не хочет сразу отказываться от Angular.
Конечно, мы сделали все возможное, чтобы оптимизировать. Я даже пытался переместить часть рендеринга из списка рендеринга Angular по умолчанию и заменить его простым JavaScript, но это не сработало. Роман вздохнул.
В определенный момент Angular пытается уловить изменения на странице, отслеживая область действия страницы и запуская соответствующие циклы дайджеста. . . Это хит производительности, мы пытались его устранить, но это не помогло, оно не работало гладко.
Еще одной серьезной задачей для Codeship было улучшение процесса тестирования и повышение надежности приложения.
Мы по-прежнему максимально используем приемочные тесты при использовании Angular. В основном мы тестируем пользовательские истории во всем приложении. Модульное тестирование с самим Angular, а также тестирование компонентов, модулей или контроллеров по отдельности — это проблема. Это вряд ли дает нам все портреты, которые нам нужны. Роман объяснил.
решение
Получение одобрения персонала и одобрение VPE — это первый шаг в переходе с Angular.
Поначалу заставить всех согласиться использовать Vue было нелегко. Команда никогда не слышала об этом раньше, все, что они знали, это Angular 2 и то, что Google отказывается от него, а за ним стоят React и Factbook. — сказал Роман.
На собраниях команды первый вопрос обычно касается размера сообщества Vue.js, люди хотят знать, могут ли они получить помощь от сообщества, если они столкнутся с проблемами во время разработки, потому что большинство наших сотрудников являются пост-воркерами. стороны, они предпочитают придерживаться надежных имен, которые они могут услышать.
Роман решил использовать свои знания и находки, чтобы убедить их перейти на Vue.js.
«Я сделал несколько примеров и внутреннюю демонстрацию, чтобы, по крайней мере, убедить их в правильности решения и его обосновании, — сказал он, — Если вы кратко прочитаете исходный код Vue, вы увидите, что расширить код самостоятельно несложно. Это не похоже на Angular или другие подобные тяжелые фреймворки».
Прежде чем Codeship приступит к разработке, им необходимо проверить концепцию.
В то время у меня также не было большого опыта работы с Vue, и мои знания о технологиях, задействованных в этом фреймворке, были очень ограничены. Однако начать с Vue казалось несложным делом, и я быстро понял, что это решение большинства проблем, которые нас мучили. Мне потребовалась всего ночь или около того, чтобы реорганизовать важную часть Vue и попытаться использовать множество логлайнов в качестве доказательства концепции.
Затем я выполнил профилирование процессора для всего кода, что сразу же доказало моей команде, что Vue.js дал нам огромный прирост производительности. Мы сократили время рендеринга с 30 секунд до примерно 7 секунд. – напомнил Роман.
Имея на руках доказательство концепции, Роман и его сотрудники могут, наконец, начать переход на Vue.
Мы пытались удалить доказательство концепции и заменить нашу существующую систему Vue. Фактический риск здесь очень маленький. У нас есть система, сбиваясь для пользователей, так что может быть хуже? Роман смеялся.
Я быстро проверил работу, потратив неделю на рефакторинг и переписывание страницы, а затем разослал ее пользователям для обратной связи. Всего через день мы обнаружили, что все проблемы, которые преследовали нас в прошлом, исчезли, даже при наличии 15 МБ журналов. При времени рендеринга от 30 до 40 секунд (мы работаем над тем, чтобы еще больше сократить это число), приложение отлично работает во всех браузерах, и мы не зафиксировали ни одного сбоя.
Отказ от приемочных испытаний делает всю часть тестирования более приятной и надежной.
Мы отказались от приемочных тестов и начали думать о том, что мы можем получить и тестировать с помощью Jest и Vue. Мы используем несколько компонентов в Vue, даже сложные страницы, но можем тестировать только с помощью Jest, потому что у нас есть снимки и мы проверяем, что рендеринг HTML — это то, что нам нужно. Роман объяснил.
выход
Некоторые инженеры, которые редко занимаются внешним интерфейсом, теперь чувствуют себя вправе прикоснуться к некоторым фрагментам кода.
Angular и его структуры, модули, модели и контроллеры и десятки других вещей. . Вводятся излишне высокие уровни сложности. Для этих инженеров большинство существительных звучит как странная магия. Но когда они на самом деле увидели Vue.js, они сразу почувствовали в себе силы погрузиться в него. «Это очень большая победа для нашей компании, — размышляет Роман.
Vue.js помогает Codeship организовывать свой код и оптимизировать взаимодействие с пользователем.
Это помогает нам быстрее предоставлять необходимые функции, пользователям не нужно месяцами ждать того, что им нужно или чего они ожидают, и им это нравится. Одна из наших страниц работает на jQuery и имеет очень странную структуру. Мы преобразовали его в Vue. Теперь он обеспечивает более совершенный опыт и более удобное взаимодействие с пользовательским интерфейсом, поэтому он значительно улучшает взаимодействие с пользователем. Люди всегда говорят нам это.
При использовании jQuery код очень беспорядочный, сложный и сложный в обслуживании. С Vue все по-другому, вы можете воспользоваться преимуществами его компонентов и его экосистемы, такой как Vuex. То, чем мы сейчас занимаемся, — это управление состоянием страницы, чего мы никогда раньше не делали, по крайней мере, не таким чистым способом.
Angular-тестирование — очень болезненный процесс для Codeship. С Vue.js они знают, что их код надежен.
Vue.js действительно улучшает наш протокол тестирования. Jest — это более умный инструмент тестирования для нас. Но с Vue мы чувствуем, что у нас есть больше способов контролировать каждый аспект приложения, — объяснил Роман.
Я могу запустить 15 тестов, которые выполняют определенное действие. Таким образом, я могу легко определить точки останова в своем коде. В предыдущих приемочных испытаниях я не мог этого сделать, потому что это занимало бы много времени. Полученные результаты не стоят затраченных усилий. Юнит-тесты лучше справляются с этим. Что касается кода, я знаю, что он надежен, потому что мы протестировали его совершенно по-новому, и результаты невероятны.
GitLab
GitLab — это программное обеспечение для управления репозиторием git с открытым исходным кодом, которое объединяет размещение кода, тестирование и развертывание.
У каждого фреймворка есть своя ниша, и при использовании Vue любая проблема — ваша, а не Vue. Это просто идеальный кадр.
Джейкоб Шац, руководитель внешнего интерфейса GitLab
испытание
Внедрение сложной функциональности и поддержание существующей функциональности может быть затруднено. Большие приложения Rails + jQuery сложно масштабировать. Недостаточная скорость приложения.
Решение
Постепенно вводите Vue.js в GitLab для использования с jQuery. Используйте Vue.js для соответствующих новых функций и переносите старые. Не делайте полной перезаписи или рефакторинга без необходимости. Используйте webpack для создания оптимизированных пакетов кода.
выход
Единые руководства по стилю для кодовой базы и архитектуры структуры кода становятся проще в обслуживании. Значительно улучшено потребление времени и эффективность кодирования. Благодаря возможности реализации более сложных функций улучшенный пользовательский опыт приводит к повышению эффективности продаж. Время загрузки страницы улучшается за счет уменьшения размера пакета.
испытание
За шесть лет маркетинга GitLab стал известным поставщиком решений в умах тысяч компаний и разработчиков. Но два года назад большая часть кода внутри компании все еще была написана на Rails и jQuery.
До 2015 года в компании не было штатных фронтенд-разработчиков, и вся система работала очень хорошо. Разработчики Rails пишут интерфейсный код неполный рабочий день и отлично справляются со своей работой. Однако планы компании на будущее требуют нового решения.
Когда я впервые пришел в компанию, я увидел, что у нас есть несколько относительно простых проектов, которые были реализованы с использованием только jQuery. Но если мы хотим сделать что-то более сложное или реализовать что-то большее, нам нужно что-то еще. Джейкоб объяснил,
jQuery великолепен, но поскольку вы несете ответственность за каждое изменение состояния в своем коде, это приводит к большему количеству ошибок.
Чтобы достичь своей цели, GitLab начал искать новое решение.
Поскольку у меня уже есть опыт работы с Backbone, мы рассмотрели его. Мы также тщательно продумали React, но также исключили его. Также Embar и другие разные фреймворки. Я даже думал о том, чтобы сделать небольшой проект с каждым фреймворком, о Vue.js мы тогда даже не думали! — напомнил Джейкоб.
Тестирование всех этих фреймворков помогло Джейкобу осознать их сильные и слабые стороны.
Backbone хорошо структурирован и имеет множество гаджетов для выполнения работы. Но вы на самом деле используете его, мало чем отличающийся от jQuery. И я немного опасаюсь использовать фреймворк вроде React, который зависит от крупных компаний, так что мне он тоже не подходит. Я очень люблю Мифрил! Единственная проблема в том, что это очень сложно писать. Если они смогут добавить немного дружелюбия, я уверен, что люди начнут к этому привыкать.
Еще одна большая проблема — сделать зрелое решение для перехода на новые технологии. При этом существует большой риск, поэтому его нужно хорошо переключать.
В GitLab у нас есть тонны кода. Когда я присоединился, наша кодовая база уже состояла из 8000 строк кода JavaScript. Очевидно, я вовсе не хочу полностью переписывать эту вещь. На самом деле у нас все еще есть некоторые части нашей кодовой базы, написанные на jQuery.
решение
Протестировав несколько фреймворков, Джейкоб не смог найти идеального соответствия среди фреймворков, которые были у него под рукой. Только после того, как он написал большой проект с ранней версией Vue.js, он понял, что, возможно, нашел золото.
Когда я собирал этот проект, я знал, что мы можем написать много кода с помощью этого фреймворка. Это не просто написание простого приложения todo. «Все проблемы на самом деле начинаются, когда вы начинаете работать над этим большим приложением», — объяснил Джейкоб.
Прежде чем GitLab начал переходить на Vue.js, им нужно было провести проверку концепции.
Фил Хьюз [старший фронтенд-инженер GitLab] создал доказательство концепции, в которой мы взяли основную функцию, которую мы делали, — доски задач. Фил написал это на Vue.js, и очевидно, что мы проделали большую работу за короткий промежуток времени! Ранее не было различных ошибок, вызванных jQuery. — сказал Джейкоб.
Vue.js поддерживает Джейкоба в его команде, чтобы продвигать его собственный подход — небольшие итерации и создание доказательств концепции.
У нас всегда есть четыре или пять доказательств концепции, сказал он.
При таком подходе GitLab представила веб-пакет, который может разбивать активы на более мелкие фрагменты для загрузки браузерами, тем самым сокращая время загрузки приложений.
Мы создали небольшое доказательство концепции, чтобы увидеть, будет ли работать веб-пакет, и когда мы обнаружили, что это так, мы завершили процесс и завершили разработку Vue и всего приложения Trello. И заменил многомиллиардную индустрию за месяц, отличная работа, Фил! Джейкоб улыбнулся.
Реактивные шаблоны — самые полезные функции Vue.js.
Это очень, очень простая вещь, которую делает Vue. Первое, что я сделал, программируя в GitLab, — это зашел на страницу задачи, до этого, когда вы нажимали кнопку «Закрыть», вам приходилось обновлять страницу. И теперь он меняет состояние кнопки слияния, что автоматически меняет состояние всех кнопок под ней. В jQuery нам нужно написать не менее тридцати или сорока строк кода, чтобы убедиться, что состояние кнопки правильное. В Vue.js требуется только одна строка кода. — Вид всегда отражает текущую ситуацию, — объяснил Джейкоб.
И теперь мы используем Vuex, который делает это лучше, чем раньше. Работа государственного управления имеет большое значение
Хотя Vue имеет много преимуществ, у него также есть недостаток.
Сейчас в GitLab 15 разработчиков. С такими фреймворками, как Angular, все могут работать вместе одинаково. Vue гораздо более открыт, чем он есть на самом деле, поэтому нам нужно создать документацию, чтобы рассказать вам, какие шаблоны следует использовать при написании кода на Vue.js. Но это проблема, которую мы решили, и именно открытость Vue делает его таким привлекательным, но вам нужно держать всех на одном уровне.
**VUE.JS STYLE GUIDE BY GITLAB
выход
Использование jQuery для расширения приложения и введения новых функций на самом деле возможно, но его сложно поддерживать.
我们现在正在做的事情需要非常大的代码量以及很多的组织。针对这些问题 Vue 解决了很多。 — сказал Джейкоб.
Как и в случае с реактивом в Vue.js, вы даете ему переменную, и он привязывается непосредственно к DOM и заботится обо всем остальном, особенно о виртуальном DOM в версии 2.0, что дает нам упрощенный рабочий процесс для повышения производительности.
GitLab может быстро выполнять итерации и улучшать удобство использования кода благодаря Vue.js.
Раньше нам нужно было сосредоточиться на мелких деталях и коде, теперь мы, наконец, можем сосредоточиться на удобстве использования кода и пользовательском опыте. Мы можем думать о более широкой картине.
Vue.js настолько открыт и прост в освоении, что фронтенд-разработчики в GitLab могут иметь дело с ним каждый день.
В отличие от других инструментов, Vue не следует каким-либо строгим ноу-хау. Он открыт, и это здорово. Я люблю все, что он делает сейчас. Конечно, у него самая удивительная документация, какую только можно себе представить. Он очень интуитивно понятен и удобен для новичков.
Vue.js помогает GitLab оптимизировать время и затраты
Как вы знаете, мы на самом деле растем быстрее. Это легко увидеть. С точки зрения продаж, улучшенные функции взаимодействия с пользователем, которые мы создаем, привлекают людей к GitLab и делают его еще более захватывающим продуктом. Людям нравятся новые функции, которые мы разработали с помощью Vue.js. Поскольку мы улучшаем пользовательский опыт, мы также косвенно увеличиваем продажи.
Джейкоб считает, что они обязательно снова будут использовать Vue.js в будущем.
Мы все готовы! Теперь у нас другие задачи. В настоящее время мы работаем над улучшением нашего процесса и ускорением тестирования. Vue.js решает за нас так много проблем, что мы обязательно продолжим использовать его в будущем.
Livestorm
Livestorm — это универсальное веб-решение для онлайн-конференций. Он помогает таким компаниям, как Workable, Pipedrive или Instapage, проводить презентации продаж в реальном времени или обучать клиентов.
Нам не нужно было тратить месяц на использование React, чтобы привести все в порядок, Vue позволил нам сделать это за неделю. Я абсолютно убежден, что без Vue мы бы не достигли того, что имеем сегодня.
От Жиля Берто, соучредителя и генерального директора Livestorm.
испытание
Создавайте с нуля надежное сетевое программное обеспечение для работы в режиме реального времени и делайте его эффективным на конкурентном рынке. В Париже очень мало экспертов по Vue.js. Привлеките первых пользователей и подтвердите идею продукта.
решение
Создайте быстрое лучшее в своем классе приложение. Создайте высокопроизводительное приложение с помощью Vue.js и Ruby. Найдите потенциальных сотрудников для своей команды в сообществе Vue.js.
достижение
Получайте мгновенные положительные отзывы от пользователей. Многоразовые компоненты и быстрая разработка. Быстро растущий объем бизнеса и ежемесячный рост выручки на 20-30%.
испытание
В отличие от других веб-платформ, Livestorm отображает все в браузере. Сервис предлагает действенные подходы с помощью аналитики, интеграции с популярными системами управления взаимоотношениями с клиентами и программным обеспечением для автоматизации маркетинга.
Для таких приложений Gilles и его команда должны выбрать высокопроизводительный технологический стек. Они планируют проверить свои идеи с нуля и построить стабильный и надежный продукт.
Основой Livestorm является приложение Rails — вся внутренняя часть выполняется на Ruby. Жиль объяснил: «Для всех наших интерфейсных компонентов мы выбрали Vue.js.
Мы начали разработку нашего проекта в январе 2016 года и с первого дня знали, что будем использовать Vue. Нам нужны полностью открытые, высокопроизводительные логические компоненты. Vue — единственный фреймворк, отвечающий всем нашим требованиям.
Livestorm был создан четырьмя соучредителями для создания сильной рабочей силы с первых дней существования компании.
Мы рассматриваем множество вопросов по подбору персонала. В районе Парижа, где мы работаем, очень мало разработчиков Vue.js. Мы также рассматриваем возможность найма разработчиков, владеющих другими фреймворками, такими как Vue, но в этом случае процесс адаптации может занять больше времени, что для нас проблематично.
Чтобы создать успешный потоковый продукт, команды должны сосредоточиться на надежности.
Надежность является для нас главным приоритетом. «Если вы потеряете прямую трансляцию, вебинары и презентации рухнут, а трансляция пропадет, и наш бизнес станет бессмысленным», — сказал Жиль.
Если приложение зависает, или есть ошибка, которая делает его непригодным, мы теряем пользователей. Нам нужна технология, которая гарантирует высочайшее качество кода и быстро работает. Мы все еще выполняем сквозное тестирование подразделения. Есть вещи, которые мы еще не реализованы с Vue, которые вновь новые для нас.
решение
Большинство разработчиков по-прежнему выбирают React и другие популярные фреймворки, но Жиль считает, что это изменится.
Чтобы набрать экспертов в штат, мы посетили встречу Vue.js в Париже, где познакомились с очень опытными людьми. Мы также пробовали размещать вакансии на сайтах вакансий, и, что интересно, большинство программистов, с которыми мы беседовали, сказали, что они используют Vue.js для своих проектов, но в основном они используют Angular, React и другие фреймворки для своей повседневной работы. Жиль отмечает, что большинство из них из крупных компаний.
Однако я заметил одну вещь: компании, которые часто используют эти технологии, вынуждены использовать устаревший код или потому, что хотят попробовать новые передовые технологии, которые пробуют и другие люди. В сообществе стартапов, на многочисленных беззаботных каналах и встречах, которые я посетил, технические директора и соучредители, с которыми я разговаривал, заинтересованы в переходе на Vue.js, они в восторге от нашего использования Vue в Livestorm. и было задано много вопросов. Честно говоря, я считаю, что произойдет серьезный сдвиг — люди будут более заинтересованы в переходе на что-то надежное и эффективное, например, на Vue.js. Жиль добавил, что разрекламированные технологии, такие как React, будут постепенно терять популярность, пока в конечном итоге не устареют.
Жиль хотел выпустить свой продукт как можно быстрее, и его команда быстро создала MVP, чтобы получить первоначальную обратную связь от внешнего мира.
Нам потребовалось меньше месяца, чтобы создать наш первый MVP. Этого достаточно, чтобы продемонстрировать продукт и основную идею. «В конце концов, мы получили много положительных отзывов, что позволило нам соответствовать требованиям рынка», — вспоминает он.
Нам потребовалось 5 месяцев, чтобы продать нашу первую подписку. Прошло довольно много времени, но нам нужно сначала сделать что-то, что не обязательно связано с технологиями.
Множество функций, которые команда Жиля создала на своей платформе, делает это решение конкурентоспособным, и это потрясающе.
Прямая трансляция WebRTC, прямая трансляция в формате Full HD на живых встречах, веб-камера и общий доступ к экрану являются основными функциями, связанными с видео. Мы также предоставляем раздел, ориентированный на аналитику, который работает на Vue.js и интегрируется с популярными инструментами продаж и маркетинга, такими как Salesforce. Мы также разработали уникальные функции, которых нет в другом программном обеспечении для веб-конференций на основе браузера, что позволяет пользователям переключаться с WebRTC на HLS на лету, обеспечивая потоковую передачу мультимедиа, соответствующую пользователям браузера IE и подмножеству мобильных устройств.
достижение
Спустя год на рынке у Livestorm есть пользователи со всего мира, и у него уже есть прибыльный продукт.
У нас уже есть около 150 платных пользователей, которые впечатлены скоростью Livestorm, им нравится интерфейс и взаимодействие. С коммерческой точки зрения у нас есть приложение, которое работает независимо от нас, так что, скажем, у нас нет отдела продаж. У нас 7 сотрудников, в том числе эксперты по продуктам, инженеры и маркетолог. Это я, объяснил Жиль, но только потому, что продукт такой хороший и надежный, мы растем на 20-30% каждый месяц.
Благодаря Vue.js Livestorm может быстрее выпускать новые функции для удовлетворения потребностей клиентов.
Конечно, мы стараемся добавлять новые функции как можно скорее. «Сейчас мы находимся на двухмесячной стадии разработки, которая заканчивается выпуском крупной функции, но обычно мы выпускаем функции в течение недели или двух», — объяснил Жиль.
С Vue.js нам не нужно каждый раз строить колесо.
Мы можем повторно использовать все существующие компоненты для ускорения разработки. Прямо сейчас 39,5% нашей кодовой базы создается с помощью Vue.
Жиль утверждает, что выбор Vue.js среди других фреймворков сделал его компанию более успешной.
Только бенчмарки говорят правду, и теперь бенчмарки ясно демонстрируют, что Vue.js определенно является выбором для новых и существующих продуктов. «Поэтому, если кому-то в ближайшем будущем придется делать выбор в отношении технологии, он должен полагаться на конкретные факты, цифры и ориентиры, а не на мнения», — сказал он.
Если у вас много разработчиков, которые привыкли использовать Angular или более классический фреймворк, их переход на React может стать проблемой для всей команды. Переход на Vue, с другой стороны, более плавный и, в свою очередь, стоит меньше. Нам не нужно тратить месяц, чтобы все настроить как React. Vue запустил нас за неделю. Если бы не Vue, я на 100% уверен, что мы бы никогда не достигли того, что имеем сейчас.
Особенности Vue.js
Эван ты из Vue.js
устойчивость
Как проект, Vue.js прошел долгий путь, чтобы стать тем, чем он является сегодня. Он вырос из небольшого эксперимента в зрелую структуру и используется тысячами разработчиков по всему миру. Он вырос из «проекта» в экосистему с более чем 300 участниками в организации vuejs и поддерживается основной командой из более чем 20 активных участников со всего мира. Члены основной группы отвечают за обслуживание основной библиотеки, документацию, участие сообщества и основные новые функции, такие как улучшения объявления типов и возможности тестирования. Говорить, что Vue — это «проект одного человека», уже не точно, а также неуважительно ко всему замечательному вкладу команды и сообщества.
В финансовом плане с февраля 2016 года кампания на Patreon получает стабильный гарантированный доход, что позволило мне работать над проектом на постоянной основе последние полтора года. Кроме того, недавно начатая кампания OpenCollective, направленная на оказание финансовой поддержки общественным инициативам, всего за две недели получила годовой бюджет в размере более 11 000 долларов США и продолжает расти. Более того, эти открытые каналы для финансовых взносов означают, что ваша компания может активно способствовать обеспечению устойчивости проектов, став спонсором.
Сегодня я с уверенностью говорю, что как проект с открытым исходным кодом Vue.js прошел переломный момент, когда выживание проекта больше не является проблемой для тех, кто рассматривает возможность принятия проекта.
стабильность
Интерфейсный дизайн меняется быстро, и мы знаем, как неприятно постоянно меняться. Вот почему мы уделяем такое большое внимание стабильности. Ознакомьтесь с историей проекта на GitHub, и вы увидите солидный послужной список новых функций и улучшенных выпусков, своевременных исправлений ошибок и тщательных стандартов для кода (да, мы гарантируем 100% покрытие тестами).
Все пакеты Vue.js выпускаются в рамках Semantic Versioning, и мы делаем все возможное, чтобы сообщать о любых потенциально необходимых действиях заранее. В октябре 2015 года была выпущена версия 1.0, и прорыва в общедоступном интерфейсе не было до выхода версии 2.0 годом позже. Перед выпуском версии 2.0 мы провели открытое обсуждение дизайна и выпустили несколько альфа-, бета- и RC-выпусков, чтобы обеспечить стабильность финальной версии. Мы изо всех сил старались сохранить интерфейс, аналогичный версии 1.0, и предоставить исчерпывающие инструкции и инструменты для обновления. На сегодняшний день 2.0 выпускается уже больше года и широко используется в продуктах по всему миру, и мы не видим необходимости в серьезных изменениях интерфейса в обозримом будущем. Мы стремимся улучшить структуру с минимальным воздействием на пользователей.
постоянное улучшение
Конечно, мы не будем довольствоваться тем, что сделали до сих пор. В наших планах много идей, которые нужно изучить и реализовать в течение следующих нескольких лет, и я бы разделил их на три категории:
Недавние улучшения
Эти новые функции/улучшения будут по-прежнему выпускаться в второстепенных версиях 2.x, и они могут исходить из запросов функций, вдохновения от более широкого сообщества веб-разработчиков и вариантов использования, с которыми мы сталкиваемся в реальной разработке.
среднесрочные улучшения
Есть новые функции языка JavaScript (такие как прокси ES2015, промисы), которые могут упростить или улучшить текущий интерфейс, но поскольку IE9 должен поддерживаться, он пока не подходит для размещения в основной ветке, мы планируем начать пользоваться этими преимуществами. функции в параллельной ветке, и для этого требуется поддержка последних основных браузеров.
долгосрочное улучшение
Мы также уделяем внимание новым стандартам, таким как улучшения синтаксиса класса ES (переменные класса и декораторы), веб-компоненты (пользовательские элементы и модули HTML) и WebAssembly. Мы уже начали некоторые из этих экспериментов и обязательно будем использовать их для дальнейшего улучшения опыта разработки и производительности Vue по мере их адаптации к браузеру.
долгосрочное видение
Многие спрашивают меня, почему я начал использовать vue.js. Честно говоря, первоначальной целью было «пощекотать себя» и создать интерфейсную библиотеку, которую мне нравится использовать. В процессе, поскольку Vue все больше и больше принимается все большим количеством пользователей, я получил много сообщений от пользователей, в которых говорилось, что Vue делает их работу все более и более приятной, поэтому кажется, что мои предпочтения отличаются от многих веб-сайтов. развитие... друзья совпало. Сегодня я вижу, что цель Vue — помочь большему количеству разработчиков получать удовольствие от создания веб-приложений. Я считаю, что более счастливые разработчики более продуктивны и в конечном итоге приносят большую пользу всем. Цель состоит в том, чтобы обеспечить доступную, интуитивно понятную и в то же время надежную, мощную и расширяемую структуру. Я считаю, что мы на правильном пути, но мы также можем сделать больше, особенно с веб-платформой, которая будет расти быстрее, чем когда-либо.
Мы взволнованы тем, что нас ждет.
© Monterail, October 2017
Monterail — это сплоченная команда из более чем 80 специалистов. Веб и мобильная разработка для стартапов и предприятий. И мы любим Vue.
www.monterail.com hello@monterail.com
Программа перевода самородковэто сообщество, которое переводит высококачественные технические статьи из Интернета сНаггетсДелитесь статьями на английском языке на . Охват контентаAndroid,iOS,React,внешний интерфейс,задняя часть,товар,дизайнЕсли вы хотите видеть более качественные переводы, пожалуйста, продолжайте обращать вниманиеПрограмма перевода самородков,официальный Вейбо,Знай колонку.