Почему бы не Angular 2 в новом проекте?

Несмотря на выпуск Angular 2, все еще есть компании/люди, которые не решаются использовать последнюю версию даже для нового проекта. Так что если вы решаете, начинать ли проект на Angular 1 или Angular 2, то эта статья предназначена для вас.

Давайте начнем с постановки вопроса: «Почему бы нам не использовать Angular 2?» Этот вопрос смещает перспективу с (типичного) вопроса: «Почему мы должны использовать Angular 2?». В первом случае предполагается, что Angular 2 должен быть выбором по умолчанию. Вы используете Angular 2, если нет веской причины против этого. В последнем случае наоборот. Вы должны обосновать использование Angular 2, например. проект требует рендеринга на стороне сервера.

Прежде всего, нам нужно согласиться с точкой зрения, что Angular 2 является стандартным выбором, который устанавливает основу для сравнения. Тем не менее, спорно, действительно ли Angular 2 сейчас является стандартом. Он не такой зрелый, как Angular 1; экосистема не так богата. Angular 2, с другой стороны, в некоторых отношениях более продвинут, например. эмулированный теневой DOM. Его экосистема быстро догоняет, и вы также можете использовать независимые от фреймворка библиотеки на основе веб-компонентов, например. Онсэн Уи.

Одна проблема с вопросом «Какие функции Angular 2 нужны проекту?» заключается в том, что это не легко предсказать. Внезапно появляется новое требование, которое приводит к необходимости рендеринга на стороне сервера, тогда вам лучше использовать Angular 2. Мы считаем, что технологии должны двигаться вперед. Например, недавно мы обновили проект до Rails 5, хотя нам не понадобились какие-либо новые функции Rails 5. Несмотря на это, все просто приняли это. На это есть и другие веские причины. Прежде всего, это безопасность. Angular 2 — это, без сомнения, будущее. Если это еще не стандартный выбор, то рано или поздно он станет (как это было с HTML5, ECMAScript 6 и т. д.). Начинать проект в Angular 1 — это почти как иметь технический долг до того, как какая-либо функция будет реализована.

Вернемся к исходному вопросу: есть веские аргументы в пользу того, чтобы не использовать Angular 2. Если команда разработчиков не имеет опыта работы с Angular 2, а проект работает в сжатые сроки. Или у вас могут быть основные проекты в Angular 1 в качестве зависимостей, например. компоненты компании. Еще одним примером может быть проект с коротким промежутком времени, например. прототип.

Нет ничего черного и белого, как и этот выбор. Третий вариант — объединить Angular 1 и 2, так называемое гибридное приложение. Это было бы выгодно для постепенной модернизации основных проектов. Большим недостатком является то, что это увеличивает сложность. Это может вызвать новые проблемы, разработчики должны знать обе технологии, поэтому лучше этого избегать.

В заключение, если вы можете использовать Angular 2, вы должны его использовать!