Найти тему
Автоматизация

Angular. Введение

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

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

Несколько лет назад, разработчики, столкнувшиеся с растущей сложностью разработки сайтов, начали искать решение этой проблемы. Сначала это был простой набор библиотек, включающих в себя наиболее часто использующийся функционал, но со временем появились первые веб-фрейворки (Joomla, WordPress др.), которые брали основную работу по построению веб-приложения на себя, а программистам оставалось лишь их корректно сконфигурировать. Однако, они не всегда обеспечивали простоту и их внутреннее устройство оставляло желать лучшего, и зачастую имело многочисленные проблемы с безопасностью. Многие такие фрейворки не обладали правильно спроектированной структурой и нередко представляли собой мешанину кода, понятной только его создателю.

Появление новых JavaScript-фреймворков (React, Vue, AngularJs), имеющих четкую и хорошо спланированную структуру, позволило разрабатывать в кратчайшие сроки сложные пользовательские интерфейсы для веб-приложений, обеспечивая вместе с этим простоту, модульность и масштабируемость.

На данный момент одним из наиболее популярным js-фреймворков является Angular, который представляет собой дальнейшим развитием AngularJS. Как и многие другие фреймворки он имеет модульную конструкцию, где каждый элемент отвечает за определенную функциональность: HTTP запросы, создание форм, маршрутизация и т.д.

Одним из важнейших достоинств Angular является тщательно спроектированная структура и следование SOLID, что позволяет создавать лаконичный и самодокументированный код.