Angular和Backbone与jQuery的不同之处

What makes Angular and Backbone different from jQuery?

本文关键字:jQuery Backbone Angular      更新时间:2024-02-23

我已经使用JavaScript和jQuery很长一段时间了,我想进一步扩展我的技能,在搜索过程中,我发现了两个流行的名称AngularBackbone,在阅读它们时,我发现它们中有一行是共同的,不知怎的,这似乎也是它们的USP,即

It is designed for developing single-page web applications

这让我很困惑。

  • 我不能用JS或jQuery做什么,我需要这些?

  • 我已经在单页上创建了web应用程序,用户可以通过异步调用在单页执行CRUD操作,那么为什么对其他库如此重要呢?

作为一个精通JS的中级web开发人员,转移到这两个方面是正确的吗?还是在这之前我应该研究一下其他方面?

请帮忙?

结构。

在大约4年前开始的一个正在进行的项目中,我们使用jQuery构建了前端。我们几乎可以完成所需的一切,创建了几个功能强大的单页应用程序。

随着项目的进展和代码库的增长,我们开始在代码的可维护性方面遇到一些重大问题。我们最终在一个几乎不可能导航的混乱中,每页有数百或数千行JavaScript代码。当然,如果我们更小心的话,这是可以避免的,但当时我们专注于确保后端架构是健壮的。

许多年前,社区了解到代码需要结构才能维护。我们开发了MVC模式、多层应用程序等。但JavaScript在这个领域从来都不是一个大玩家,我们基本上忽略了它

在过去的6个月左右,我们将Angular引入到该项目中,并开始清理项目中的一些混乱。结果是显著的。代码不仅更简单、更容易创建,而且结构更容易实现测试,更容易维护,总体上比以前有了巨大的改进。我们仍然使用jQuery,但现在我们已经被缺乏结构所困扰,对JavaScript应用程序的架构略知一二。Angular及其类似工具为您提供了构建良好应用程序的工具。

当您创建更大规模的web应用程序时,明智的做法是查看Backbone、Angular或Meteor。jQuery支持巧妙的技巧,但它不能帮助您以可维护的方式构建代码。基于jQuery构建的大规模web应用程序需要自己的愿景,即如何将代码划分为不同的层,并承担自己的责任。其他框架提供了更多的支持。

我建议至少去一个图书馆看看。也许您最终不会使用它们,但它将使您在jQuery中的工作方式受益。

好吧,最近有很多关于Angular.js的炒作,尤其是SPAs(单页应用程序)。老实说,大约一个月前,当我的团队决定从Jquery转移到Angular时,我脑海中也有同样的问题。

每当谈到Jquery时,我们首先想到的就是DOM操作。在使用Jquery时,我们总是考虑操纵DOM。显示/隐藏元素,为元素设置动画,从你命名的标签中获取数据。但Angular提供的不仅仅是这些。它为您提供了一种体系结构,一种在前端构建应用程序的方法。

因此,无论何时使用Angular.js,都要改变创建web应用程序的想法(相信我这是值得的)。Angular的大多数结构都使用DependencyInjection的概念,这是维护代码的一种巧妙方法。

Backbone只是一个库,而Angular.js是创建和管理单页应用程序的完整框架

说到Angular.js应该在我们创建大型可扩展应用程序时使用,这是真的。在我的案例中,与我合作的团队中充满了Jquery忍者。在过去的3年里,我们一直在创建一个很棒的应用程序,相信我,我们很难维护和调试成千上万行Jquery。这是我们决定将这个应用程序改造成Angular的主要原因。

请查看其中一些有用的链接。你会有更好的主意。

  1. http://net.tutsplus.com/tutorials/javascript-ajax/3-reasons-to-choose-angularjs-for-your-next-project/
  2. "AngularJS中的思考;如果我有jQuery背景