angular简介和其特色介绍

                这篇文章主要介绍了angular简介和其特色介绍,本文讲解了关于和jquery的比较、关于适用场合、关于UI的结合、关于angularjs的特色等内容,须要的朋友能够参考下之前开发(web或者移动端)前端主要使用jQuery+原生js,若是使用某些前端UI框架的话,它本身还可能提供一些API可使用。并且目前不少UI框架都是基于jQuery的,因此说一下由jQuery跨到angularjs跨度较大,研究了一段时间的angularjs ,下面从总体上说说感觉吧:html

    关于和jquery的比较前端

首先angular是一个mvc框架,它与jquery不一样之处在于,前者致力于mvc代码解耦,采用model,controller以及view方式去组织代码,然后者提供给你了不少APi函数,你能够不用写不少原生js去实现比较复杂的效果,好比说动画,$.animate,这样的效果若是须要原生js来写的话,代码量将会比较庞大;jquery

其次,jQuery没有定义你的代码如何组织,你能够将它放在一个单独的js文件中进行引用,也能够直接写在页面中采用script标签进行包裹,甚至能够直接之内联的方式写在html标签中,可是angularjs会将一个HTML页面分红若干个模块,每一个模块均可以本身的scope,service以及directive,各个模块之间也能够进行通讯,可是总体上结构是比较清晰的,就是说其代码组织方式是模块化的。git

最后,jQuery的思想是先设计好页面,而后在已有页面的基础上进行dom操做后展现页面,可是angular的view可能仅仅是一个框架,对view的dom操做或者时间监听都是在directive中实现的,并且通常状况下不多本身直接去写Dom操做代码,只要你监听model。model发生变化后view也会发生变化。angularjs

    关于适用场合github

jQuery应该适用于大多数web开发,移动端也有(jQuerymobile),angularjs有人说更适合作SPA(我我的认为在手机上的SPA可能会引起性能上的问题,由于它的脏检查机制会影响性能),在web端,一些CRUD的应用或者管理类软件仍是可使用的(固然这里的理解可能不必定准确,会随着深刻学习更多去了解和使用)。web

    关于UI的结合bootstrap

开发任何产品都须要用到前端UI,目前不少UI是基于jQuery的,这意味着你若是要用angularjs和这些Ui组件的话,须要用angularjs的directive去重写些组件,这一过程是比较麻烦的,所幸的是,angular给咱们提供了一些UI组件可使用(web端主要是结合bootstrap前端组件),http://angular-ui.github.io/,而在移动端主要是结合ionic框架http://ionicframework.com/,可是随着angular的发展,不少HTML5的前端框架也慢慢集成了angularjs版本可供使用。后端

    关于angularjs的特色设计模式

1.数据的双向绑定:这多是其最激动人心的特性吧,view层的数据和model层的数据是双向绑定的,其中之一发生更改,另外一方会随之变化,这不用你写任何代码!(想一想jQuery方式下怎么作吧)

2.代码模块化,每一个模块的代码独立拥有本身的做用域,model,controller等。

3.强大的directive能够将不少功能封装成HTML的tag,属性或者注释等,这大大美化了HTML的结构,加强了可阅读性;

4.依赖注入,将这种后端语言的设计模式赋予前端代码,这意味着前端的代码能够提升重用性和灵活性,将来的模式可能将大量操做放在客户端,服务端只提供数据来源和其余客户端没法完成的操做;

5.测试驱动开发,angularjs一开始就以此为目标,使用angular开发的应用能够很容易地进行单元测试和端对端测试,这解决了传统的js代码难以测试和维护的缺陷

以上就是研究angularjs一段时间得出的结论,其中某些地方可能有所疏漏,不要紧,接下来会展开其中某一点一步步去学习。

相关文章
相关标签/搜索