Хотите знать, что это за инструмент такой — Angular.js и чем он отличается от Angular? Тогда вам нужно дочитать статью до конца. Многие начинающие веб-разработчики по своему незнанию считают, что это один и тот же инструмент, просто пишется по-разному. Кто-то написал название этого фреймворка с «.js», а кто-то написал без «.js» — разницы нет. Но разница есть и очень большая, и как раз это окончание «.js» указывает на то, с каким инструментом вы имеете дело.
Аngular.js — что это?
Angular.js — это фреймворк для разработки, который был выпущен в 2010 году компанией Google и довольно быстро завоевал популярность среди веб-разработчиков. Данный инструмент основан на языке программирования JavaScript, поэтому он несет всю мощь этого языка, но добавляет к ней свою легкость в работе. С тех пор мир веб-разработки увидел еще много версий инструмента Angular, но именно Angular.js по праву называется самой первой версией, поэтому в некоторых кругах его еще называют Angular 1.
«Первый» — не значит плохой или старый. Да, этому инструменту уже много лет, но он до сих пор в строю, и многие разработчики все еще пишут на нем свой код. Он принес в мир веб-разработки много новых возможностей, но в первую очередь скорость разработки, если сравнивать с ванильным JavaScript. Он прекрасно справлялся со своими задачами, и именно он вдохновил других разработчиков на создание ныне популярных инструментов веб-разработки — React и Vue.
Как мы знаем, интернет-технологии не стоят на месте, а постоянно развиваются. Это развитие провоцирует более жесткие требования к самой разработке, поэтому рано или поздно любой инструмент веб-разработчика, если его не развивать, начинает морально устаревать и не справляться со своими обязанностями.
Разработчики Angular.js выпустили много версий именно этого инструмента, улучшая его характеристики. Именно Angular.js дал толчок в развитии динамического HTML, компонентного программирования и распространил влияние технологии MVC (модель-вид-контроллер) и мн. др. Но изначально Angular.js был рассчитан для разработки небольших веб-ресурсов, чаще всего даже одностраничных. Как только дело касалось чего-то большого, он начинал немного лагать.
Нужны были изменения, причем кардинальные. Дальше дорабатывать именно этот инструмент не представлялось возможным, а потому разработчиками было принято решение создать новый инструмент, взяв старый за основу. Именно поэтому уже в 2016 году свет увидел абсолютно новый фреймворк Angular 2. С тех пор появилось много версий этого инструмента. На сегодняшний день мы имеем стабильную 11-ю версию и состоявшийся релиз 12-й.
Хочется отметить, что это была не какая-то версия Angular.js, а именно новый инструмент, который кардинально отличался от «.js»-версии. Да, он вобрал в себя все самое лучшее от Angular.js, но при этом принес много нового. Дальнейшие версии Angular кардинально не отличаются друг от друга, а просто обрастают новыми возможностями.
Angular и Angular.js: в чем разница
Язык разработки. Это самое первое отличие. Angular.js написан на JavaScript, именно поэтому в его названии отражается окончание «.js». Angular 2 и следующие его версии написаны на TypeScript, поэтому у них на конце не дописывают «.js». Сам язык JavaScript поддерживается в Angular — это нужно тем, кто любит писать именно на чистом языке JS.
Подход к разработке. В Angular исчез подход MVC и осталось более развитое компонентное и модульное программирование.
Новый синтаксис. В Angular 2 добавили несколько новых возможностей в синтаксис, например, в нем стало возможным напрямую передавать значения свойств дочерним компонентам. Также стала доступной технология «two-way binding».
Новый подход к валидации форм. Вернее, подход остался такой же, как и в Angular.js, но его реализация стала проще.
Роутинг. Изменился подход в реализации роутинга, например, в Angular стало возможным динамически подгружать громоздкие модули, которые редко используются.
Более низкий порог вхождения. Angular стало легче изучать. Это важно для тех, кто хочет изучить этот инструмент с нуля. Он легче, чем чистый JavaScript, но понимание работы JS при работе с Angular обязательно.
Поддержка браузеров. Angular поддерживается всеми современными браузерами, а вот Angular.js многими мобильными браузерами не поддерживается.
Производительность. Angular работает намного быстрее, чем Angular.js.
Angular имеет массу других интересных примочек, за счет которых он лучше, чем Angular.js, например:
подробная и улучшенная документация,
более развитая логика разработки;
очень качественная система подсказок и автозавершений;
встроенная командная строка для генерации и поиска чего угодно;
и мн. др.
Заключение
Теперь вы знаете, что такое Angular.js. Это первое поколение данного популярного инструмента для веб-разработки. Angular.js до сих пор жив, и многие на нем работают, однако если вы стоите перед выбором инструмента для изучения, то это однозначно должен быть Angular. Потому что Angular.js еще поддерживается разработчиками, но совсем не развивается. А Angular развивается, поддерживается и строит большие планы на будущее.
Другое