在软件开发中会用到很多技术,计算机语言等,AngularJS就是浏览器端的解决技术。本文主要论述了AngularJS的工作原理和应用及其与用户和浏览器的交互,是一篇职称论文发表范文,文章题目是简谈AngularJS在下一代Web开发中的应用。
摘 要:随着互联网开发技术的迅猛发展,Web开发技术为了能够适应这一行业发展的需要,在技术上不断的推陈出新,作为Web开发中比较重要的一个环节――浏览器端的开发技术一直是行业内热议的焦点,AngularJS技术的日渐成熟,可能将会引领Web开发技术走向一个新的阶段。
关键词:AngularJS,Web开发,浏览器端技术
1 引言(Introduction)
AngularJS作为浏览器端的解决技术,主要是为了克服HTML在构建应用上的不足而设计的。在浏览器端的技术中,在静态网页的解决方案中,我们通常使用HTML。它是一种声明式标签语言,但要构建WEB应用的话HTML标签语言就显得乏力了。所以我们需要一种能够兼容HTML的技术,用来解决浏览器端实现动态网页的问题。
2 AngularJS的工作原理(The working principle of
AngularJS)
2.1 AngularJS与浏览器的交互
当我们用浏览器去访问带有AngularJS的html脚本的时候,浏览器依次做了如下一些事情:
(1)首先进行html加载,然后将其解析成为DOM;
(2)在浏览器中加载angular.js的脚本;
(3)AngularJS等待DOMContentLoaded事件的触发;
(4)AngularJS寻找ng-app指令,该指令将起到确定应用程序的边界的作用;
(5)配置$injector,该配置使用ng-app中指定的模块;
(6)使用injector创建$rootScope服务和compile;
(7)使用compile服务编译DOM并把它链接到rootScope上;
(8)ng-init指令对scope里面的变量进行赋值;
(9)对表达式{{变量}}进行替换。
AngularJS与浏览器的整个交互流程如图1所示。
2.2 AngularJS与用户的交互
在理解了AngularJS与浏览器的交互流程以后,我们接下来要了解的就是它是如何跟用户来交互的。整体来说,主要分为以下三个阶段。
(1)浏览器的事件回路一直处于等待事件触发的状态,这里面的事件包括用户的交互操作、定时事件或者网络事件。
(2)一旦有事件触发浏览器的事件回路,就会进入到Javascript的context中,这个过程中一般使用回调函数来修改DOM。
(3)当回调函数执行完成以后,浏览器会根据新的DOM来组织渲染新的浏览器页面。
AngularJS与用户的交互循环过程如图2所示。
3 AngularJS的应用(The application of AngularJS)
3.1 AngularJS在大型Web开发中的应用
AngularJS是一种非常适合编写大型应用的JS框架。我们可以直接拿来使用,它的开发周期很快,而且它会对组织应用的结构很有帮助。AngularJS作为JavaScript框架,对模型层的完全掌控是它的独到之处。而与此同时AngularJS也是强大的,因为应用程序的核心就是我们的数据,而各种应用之间的数据又有很大区别。AngularJS可以对这些不同的、区别很大的数据进行整合,甚至于会用于数据的存储。
动态Web应用设计是一个能让我们使用HTML作为模板的语言,通过扩展HTML的语法,让我们能更清楚、简洁地构建我们的应用组件。它的创新点在于,利用依赖注入和数据绑定,可以使我们再开发过程中不再写大量的冗余代码。
3.2 AngularJS的扩展应用
(1)AngularJS认证模块――Satellizer
Satellizer是一个端到端的基于token的AngularJS认证模块,Satellizer支持Google、Facebook、LinkedIn和Twitter认证体系,并且也提供邮箱和密码的登录方式,另外Satellizer支持OAuth 1.0和2.0规范,所以你可以更加灵活地扩展认证方法。
(2)AngularJS的UI扩展模块――AngularUI
AngularUI为AngularJS提供了很多UI增强效果,并且提供了IE、jQuery兼容,以及一些常用UI组件。
(3)Bootstrap集成AngularJS模块――AngularStrap
AngularStrap可以非常完美地将Bootstra集成到AngularJS中,AngularStrap包含大部分支持AngularJS指令,所以并不需要依赖其他的样式和脚本。
(4)AngularStrap实时、多用户应用模块――GoAngular
GoAngular可让你轻松使用AngularJS和GoInstant构建实时、多用户的应用程序。
(5)AngularJS的UI组件――adapt-strap
adapt-strap是AngularJS UI组件和实用工具,是基于AngularJS1.2+和bootstrap3的。
(6)AngularJS的国际化模块――angular-translate
angular-translate是一个AngularJS的模块,用于简化i18n和l10n应用的便携,实现了延迟加载和多元化。
4 结论(Conclusion)
从目前的现实情况来看,AngularJS赢得了前端框架的战争。这并不是说没有更大更高品质的替代品可以替代,但很少有框架获得了这么多开发者包括缓慢媒体和保守公司的一致看好。对于个人开发者而言,这意味着在AngularJS上的投资是一个安全的赌注,这在未来十年将获得丰厚的回报。对于创业者来说,意味着建立一个帮助AngularJS开发者的公司和团队,因此可以产生一些非常巨大的回报。从以上对AngularJS技术的分析来看,它的良好的兼容性以及对前沿技术的支持性,必将使该项技术成为下一代Web开发中的一项重要技术。
参考文献(References)
[1] 曹刘洋.编写高质量代码:Web开发前端修炼之道[M].北京:
机械工业出版社,2010.
[2] 邓小善,龙艳军.高访问量网站性能检测与优化的设计与实现
[J].现代计算机:专业版,2009(2):25-26.
[3] 李强,杨岿,吴天吉.基于ASP.net的网站开发前端技术优化研
究[J].软件导刊,2013,12(5):107-108.
作者简介:
董英茹(1979-),女,硕士,讲师.研究领域:软件项目管理.
计算机职称论文发表期刊推荐《中关村》杂志是工业经济向知识经济转型中,以报道和推进知识经济为主要内容、具有新文化诉求的大型综合类新主流月刊杂志(128P,全彩印)。本刊立足最近被美国《新闻周刊》评为世界八大新“文化圣地”之一的中关村,力图办成中国知识经济的窗口和中国最佳新闻传播媒体。