Почему я должен использовать Angular?

Из основного Углового учебника кажется, что все, что он делает, - это получить JSON из API и отобразить его. Кроме того, есть его двойная привязка магии.

Но почему я должен использовать его вместо бэкэнд-решения (например, Rails), который создает представление в бэкэнд и обслуживает его для пользователя, со всем на месте? Каковы варианты использования?

18 голосов | спросил gberger 10 Mayam13 2013, 04:18:07

3 ответа


22

TLDR;

Угловой помогает справиться со сложностью, присущей богатым пользовательским интерфейсам. По мере увеличения сложности пользовательского интерфейса традиционная модель генерации страниц на сервере становится намного сложнее. Угловой позволяет разложить ваш интерфейс на управляемые куски и позволяет отделить пользовательский интерфейс от реализации. Это значительно упрощает создание страниц на стороне сервера, но Angular действительно приходит в себя, когда вы делаете переход к чистым приложениям на основе javascript. Хорошим примером такого приложения является Trello .

Длинная история

Угловая на самом деле не нацелена на сайты, которые можно удобно реализовать, генерируя все на сервере и отправляя их через. Кроме того, хотя это отличный подход, который работает для многих сайтов и приложений по всему Интернету, становится все более сложным (таким образом, трудно) поддерживать этот подход, когда вы пытаетесь повысить уровень интерактивности на вашем сайте.

В конечном счете то, как вы решаете это, - это все больше подталкивать ваш пользовательский интерфейс к стороне Javascript уравнения. Угловой позволяет разбить ваш пользовательский интерфейс на компоненты, давая вам четкое разделение между взглядом и ощущением и практикой. Затем вы можете создавать довольно простые страницы на сервере, а передняя часть JS используется для создания богатого пользовательского интерфейса, который делает отдельные обратные вызовы на ваш сервер для необходимых им данных.

Наступает момент, когда все, что вы хотите сделать, - это серверная страница-заглушка, которая загружает полностью приложение на основе javascript. Вероятно, самым известным примером такого вида использования, где Angular действительно сияет, является Trello (он использует Backbone, а не Angular, но это то же самое использовать регистр). Существует сайт http://buildwith.angularjs.org/, в котором есть больше примеров сайтов, использующих Angular.

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

ответил guysherman 10 Mayam13 2013, 05:40:19
6

Речь идет о создании более гибких пользовательских интерфейсов. Двойная привязка, инъекция зависимостей и т. Д. Позволяют легко создавать динамические страницы. Вы можете писать директивы в Angular, что дает вам декларативный способ построения представления.

В качестве примера, в текущем проекте у нас есть представление, которое использует несколько сотен строк кода JavaScript, чтобы сделать отзывчивый пользовательский интерфейс. Тем не менее, страница немного ошибочна и очень сложна в обслуживании. Мы начали искать лучший вариант и смотрели на backbone.js и knockout.js. В конце концов мы пробовали Angular. Мы смогли создать гораздо более отзывчивую и поддерживаемую страницу с несколькими строками кода. Gone - это все код манипуляции DOM. Ушли были все неуклюжие создания бэкэндов, которые нужно было приносить и вставлять в нужные места. Gone - это весь код, который был написан, чтобы синхронизировать модель и представление. С этим опытом решение переехать в Угловое стало легче, и до сих пор мы не пожалели об этом.

ответил Vincent Ramdhanie 10 Mayam13 2013, 05:21:39
3

Угловая для разработки приложений с одной страницей, она помогает обеспечить надежный скелет для вашего приложения. Это также хорошо с формами, не очень хорошими со сложными переполненными пользовательскими интерфейсами с большим количеством данных. Двусторонняя привязка данных сначала «магия», но вы должны знать, что самые последние фреймворки (включая сам Angular 2) отходят от двусторонней привязки данных для более простого подхода к потоку данных /потоку данных (сообщая, что история была бы слишком длинной здесь).

Я также должен предупредить вас, что Angular не имеет определенного способа делать что-то, а иногда предлагает слишком много способов скинуть кошку, что может сделать кривую обучения более крутой. Также, если вы хотите масштабировать приложение «Угловое», вам нужно будет понять его внутреннюю механику и возможное влияние на производительность. Как только вы это сделаете, и как только вы установите согласованные прочные шаблоны проектирования, небо - это предел. Но вам нужно посвятить ему время.

Тем не менее, ваш вопрос, похоже, больше о том, какие варианты использования SPA, а не самого Angular.

Случаи использования Single Pages Applications - это использование веб-приложений с надежным интерфейсом UI /UX и улучшением качества приложений. Не перезагружая вашу страницу, вы сохраняете время рендеринга и пропускную способность. Вы также разделяете данные и презентацию, которые являются удивительными. Ваше приложение будет выглядеть следующим образом:

  • Статические файлы, включая ваш index.html
  • API REST, обслуживающий данные
  • Интерфейсное приложение, управляемое данными
ответил Thomas Roch 6 Maypm15 2015, 19:19:38

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132