Для большинства людей, создающих в настоящее время новое клиентское приложение, выбор фреймворка / библиотеки, по большей части, сводится к Angular или React. Часто люди недостаточно любят Vue.js. Итак, я хочу немного рассказать о Vue.js и моем личном опыте работы с Vue.js для производственного приложения. Вместе мы попытаемся ответить на вопрос: подходит ли вам Vue.js?

Примечание. Я не пытаюсь сказать, что Vue.js лучше React, Angular или даже любых других интерфейсных фреймворков. Это просто мой личный опыт использования Vue.js в моем проекте.

Для тех из вас, кто плохо знаком с Vue.js или никогда даже не слышал о Vue.js, Vue.js - это интерфейсный фреймворк JavaScript, который был первоначально выпущен в 2014 году и был разработан Evan You. С тех пор Vue.js за очень короткое время приобрел большую популярность среди многих фронтенд-разработчиков / инженеров. Некоторые известные компании, использующие Vue.js, включают Gitlab, Alibaba, Buzzfeed. и многое другое.

Что такого хорошего в Vue.js?

Хороший вопрос! Причин несколько. Из многих причин эти 4 особенно выделяются мне из моего личного опыта.

  1. Легкий
  2. Низкая сложность
  3. Виртуальный DOM
  4. Низкая обучаемость (для начинающих)

Давайте теперь подробно рассмотрим каждый из этих пунктов.

Легкий

Одним из заметных преимуществ использования Vue.js в производственных приложениях или даже в личных проектах является то, что он относительно легкий. Давайте посмотрим на пространство для загрузки различных интерфейсных фреймворков / библиотек:

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

Низкая сложность

Это одна из моих любимых частей Vue.js, потому что после работы со многими приложениями, созданными с помощью React, кодовая база часто может стать очень сложной, если вы добавите управление состоянием в микс по мере того, как приложение становится больше. Я заметил, что одна из причин, по которой приложения React могут стать сложными, заключается в том, что шаблоны JSX, методы жизненного цикла и другие методы существуют в одном объекте. Это часто очень затрудняет отслеживание логического процесса. Итак, давайте посмотрим, как выглядит код Vue.js:

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

Виртуальный DOM

Как и React, Vue.js реализует использование Virtual DOM для управления / рендеринга представления. При использовании Virtual DOM пользовательский интерфейс будет работать лучше, поскольку он не будет отображать Real DOM каждый раз, когда требуется изменение, и будет отображать только часть различий между Virtual DOM и Real DOM.

Низкая кривая обучения

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

Большинство людей, занимающихся веб-разработкой, скорее всего, изучат основы трех технологий: HTML, CSS и JavaScript. Представьте себе, как новичку нужно узнать об этой новой вещи, называемой JSX, а не HTML. Хотя JSX похож на HTML, определенно существует ряд различий, которые отличает JSX от HTML, и это не тот вид обучения, который необходим для Vue.js.

Как видите, Vue.js использует то же имя тега, что и HTML, что упрощает перенос знаний из HTML в Vue.js. Более того, модульная структура кода может быть очень полезной для понимания различных движущихся частей компонента Vue.js.

Для тех из вас, кто знаком с React, изучение Vue.js будет легкой задачей, потому что между ними много общего.

Что плохого в Vue.js?

Как бы я ни хотел сказать, что Vue.js просто великолепен, у него есть несколько недостатков, как и у любого фреймворка / библиотеки. Вот несколько недостатков Vue.js, которые я заметил:

  1. Меньшее сообщество
  2. Ресурсы на английском языке
  3. Возможности трудоустройства

Одна из проблем, с которыми я столкнулся в начале работы над проектом Vue.js, заключалась в том, что иногда труднее найти поддержку по очень конкретной проблеме, которая возникла в моем приложении. Это связано с тем, что сообщество Vue.js все еще не такое большое, как Angular или React, что имеет смысл.

Еще одна проблема, которую я обнаружил, заключалась в том, что, когда я думал, что нашел помощь, ответы часто были написаны на китайском языке. Я попался на удочку, когда я подумал, что спасен. Позже я узнал, что Vue.js более популярен в азиатских странах, чем в англоязычных странах, таких как США.

Наконец, в настоящее время не во многих местах используется Vue.js, поэтому может быть сложно найти работу с опытом работы с Vue.js. поэтому я бы рекомендовал использовать Vue.js либо для личных проектов, либо для небольших приложений пользовательского интерфейса, либо для развлечения, чтобы дать вам немного вкуса с легким пользовательским интерфейсом за относительно короткое время.

Теперь пора ответить на вопрос: подходит ли вам Vue.js?

Расскажите, как вам понравился Vue.js ☺