Angular, до чего же ты хорош
Сегодня был дан старт новому корпоративному проекту. Наш отдел займется разработкой полезного web-приложения, которое поможет нашим клиентам экономить время. Подробности на данном этапе рассказать не могу, скажу лишь, что с технической стороны задача интересная и нестандартная.
Будущее приложение будет содержать кучу всяких элементов управления для взаимодействия с пользователями. Посетители будут их крутить в разные стороны и скорей всего в отличном от спецификации порядке, поэтому хотелось бы максимально упростить разработку клиентской части.
Привычная для многих web-разработчиков связка из JavaScript+jQuery в решении этой задачи не сильно помогут. Пользователи будут заполнять множество полей и нет никакого желания вешать кучу обработчиков на элементы управления, отслеживая различные события. При большом количество элементов управления – это делать не очень удобно.
В связи с этим, я стал сразу смотреть в сторону фреймворков, реализующих двухстороннее связывание (биндинг). Кто не в курсе - это когда изменение, производимые в элементе управления тут же отражаются на модели и наоборот.
У меня был опыт работы с двумя подобными фреймворками: knockout.js и angular.js. Первый достаточно прост в использовании, но второй подкупает дополнительными плюшками и легкостью написания тестов.
В итоге, выбор остановили на angular. Проект уже достиг стабильности и его без проблем можно применять для решения боевых задач. Сегодня делал первые наброски и скажу честно, я не сколечко не пожалел о своем выборе. Angular.js ведет себя предсказуемо и достаточно хорошая документация позволяет быстро разобраться с возникшими трудностями.
Начиная с завтрашнего дня, я буду стараться ежедневно публиковать мини-заметки с полезными примерами использования angular. Надеюсь, они смогут помочь в освоении этого первоклассного инструмента.