Хобрук: Ваш путь к мастерству в программировании

Что отличает Angular и Backbone от jQuery?

Я уже давно использую JavaScript и jQuery и хочу еще больше расширить свой набор навыков, во время поиска я наткнулся на два популярных имени Angular и Backbone и, читая о них, я нашел одну общую черту в них обоих, которая почему-то также кажется быть их USP т.е.

It is designed for developing single-page web applications

Это меня смущает.

  • Что я не могу сделать с JS или jQuery, и мне это нужно?

  • Я создал веб-приложение на одной странице, где пользователи могут выполнять операции CRUD на одной странице с помощью асинхронных вызовов, так почему же так важно для этих других библиотек?

И как веб-разработчик среднего уровня, хорошо разбирающийся в JS, это правильный путь для перехода к этим двум или вот что-то еще, что я должен изучить перед этим?

Пожалуйста помоги?



Ответы:


1

Структура.

В текущем проекте, который начался около 4 лет назад, мы создали интерфейс с помощью jQuery. Мы смогли сделать почти все, что нам было нужно, создав несколько одностраничных приложений, которые были достаточно функциональными.

По мере развития проекта и роста кодовой базы у нас начались серьезные проблемы с ремонтопригодностью кода. В итоге мы получили сотни или тысячи строк JavaScript-кода на странице в путанице, в которой было почти невозможно ориентироваться. Этого можно было бы избежать, если бы мы были более осторожны, конечно, но в то время мы сосредоточились на том, чтобы убедиться, что внутренняя архитектура является надежной.

Много лет назад сообщество узнало, что код нуждается в структуре, чтобы его можно было поддерживать. Мы разработали шаблоны MVC, многоуровневые приложения и т. д. Но JavaScript никогда не был крупным игроком в этой области, и мы в значительной степени игнорировали его.

За последние 6 месяцев или около того мы внедрили Angular в проект и начали разбираться с бардаком в проекте. Результаты замечательные. Мало того, что код проще и легче создавать, структура упрощает реализацию тестов, упрощает поддержку и, как правило, является огромным улучшением по сравнению с тем, что у нас было раньше. Мы все еще используем jQuery, но теперь мы обожжены отсутствием структуры и знаем кое-что об архитектуре приложения JavaScript. Angular и ему подобные предоставляют инструменты для разработки хорошего приложения.

04.12.2013

2

Когда вы создаете более масштабные веб-приложения, имеет смысл проверить Backbone, Angular или, возможно, Meteor. jQuery поддерживает изящные приемы, но не помогает структурировать код удобным для сопровождения способом. Веб-приложения большего масштаба, построенные на jQuery, нуждаются в собственном видении того, как разделить код на слои с их собственной ответственностью. Другие фреймворки предоставляют больше поддержки.

Я бы посоветовал проверить хотя бы одну из библиотек. Возможно, вы в конечном итоге не будете их использовать, но это поможет вам работать в jQuery.

04.12.2013

3

Что ж, несколько дней было много шума вокруг Angular.js и особенно SPA (одностраничных приложений). Ну, если честно, у меня был тот же вопрос около месяца назад, когда моя команда решила перейти с Jquery на Angular.

Всякий раз, когда речь заходит о Jquery, первое, что приходит нам на ум, — это манипуляции с DOM. При использовании Jquery мы всегда думаем об управлении DOM. Показать/скрыть элементы, анимировать элементы, получить данные из тегов, которые вы называете. Но Angular предлагает нечто большее. Он предлагает вам архитектуру, способ структурировать ваши приложения во внешнем интерфейсе.

Поэтому всякий раз, когда вы выбираете Angular.js, измените свое отношение к созданию веб-приложений (и поверьте мне, оно того стоит). Большая часть структуры Angular использует концепцию внедрения зависимостей, что является удобным способом поддержки вашего кода.

Backbone — это только библиотека, тогда как Angular.js — это полноценная платформа для создания одностраничных приложений и управления ими

Говоря о том, что Angular.js следует использовать при создании больших масштабируемых приложений, это правда. В моем случае команда, с которой я работаю, полна Jquery Ninjas. Мы создавали отличное приложение последние 3 года, и поверьте мне, нам стало сложно поддерживать и отлаживать тысячи строк Jquery. Это основная причина, по которой мы решили преобразовать это приложение в Angular.

Пожалуйста, ознакомьтесь с некоторыми из этих полезных ссылок. Вы получите лучшее представление.

  1. http://net.tutsplus.com/tutorials/javascript-ajax/3-reasons-to-choose-angularjs-for-your-next-project/
  2. Думать в AngularJS, если у меня есть jQuery фон?
04.12.2013
Новые материалы

Основы принципов S.O.L.I.D, Javascript, Git и NoSQL
каковы принципы S.O.L.I.D? Принципы SOLID призваны помочь разработчикам создавать надежные, удобные в сопровождении приложения. мы видим пять ключевых принципов. Принципы SOLID были разработаны..

Как настроить Selenium в проекте Angular
Угловой | Селен Как настроить Selenium в проекте Angular Держите свое приложение Angular и тесты Selenium в одной рабочей области и запускайте их с помощью Mocha. В этой статье мы..

Аргументы прогрессивного улучшения почти всегда упускают суть
В наши дни в кругах веб-разработчиков много болтают о Progressive Enhancement — PE, но на самом деле почти все аргументы с обеих сторон упускают самую фундаментальную причину, по которой PE..

Введение в Джанго Фреймворк
Схема «работать умно, а не усердно» В этой и последующих статьях я познакомлю вас с тем, что такое фреймворк Django и как создать свое первое приложение с помощью простых и понятных шагов, а..

Настольный ПК как «одно кольцо, чтобы править всеми» домашних компьютеров
Вид после 9 месяцев использования С настольных компьютеров все началось, но в какой-то момент они стали «серверами», и мы все перешли на ноутбуки. В прошлом году я столкнулся с идеей настольных..

Расширенные методы безопасности для VueJS: реализация аутентификации без пароля
Руководство, которое поможет вам создавать безопасные приложения в долгосрочной перспективе Безопасность приложений часто упускается из виду в процессе разработки, потому что основная..

стройный-i18следующий
Представляем стройную оболочку для i18next. Эта библиотека, основанная на i18next, заключает экземпляр i18next в хранилище svelte и отслеживает события i18next, такие как languageChanged,..