运用AngularJS营造大型Web应用

在服务器方面,你能够行使别的想要的服务器和AngularJS同盟。它只是客户端的程序库。笔者的引进和欣赏的设置是使用Node.js加nginx。作者动用nginx存放静态文件,使用Node.js制造RESTful的API和停放的(socketed)应用。对于云提供商,作者早已成功利用过Nodejitsu
和Linode。前者会让你更便于地安排程序,你不需求关注服务器的环境。如果你须要对服务器环境有越来越多调节,那么Linode会让您从尾部调整虚拟机。Linode还提供了很好的API,能够用来管理虚拟机。

  • 什么引进AugularJS,从而让您的web应用使用该框架
  • 哪些增多控件,并对其展开数量绑定
  • 如何进展表单验证
  • 怎么样与服务器通讯
  • 怎么着创立可选取的机件
  • 哪些对组件举行业地化
  • 如何让使用可放置、可注入和可测试
  • 其它,网址上还给出了1多种教程,跟随这几个剧情,大家能够从开首地渐渐对AngularJS的种种风味和用法有很好的领会,进而很好地从头利用那壹框架。
angular.module('yourAppDep').controller('MyCtrl',function(){// ...});

对于大型项目来讲,测试十分重要。它让您可以满怀信心地展开重构,而那对于保险大型项目代码整洁十分关键。大型应用应该既有着单元测试,也要具有端到端(end-to-end)测试。单元测试有助于定位难题,而端到端的测试能够确定保证全部应用像盼望的那样行事。每一种调整器、服务、过滤器和指令都应有有着一文山会海单元测试。而使用的各种天性都应该具备端到端的测试。

angular.module('yourAppDep').service('MyCtrl',function(){// ...});

文件:每一个文件中应有唯有①件事物,那件事物只怕会是控件、指令、过滤器可能服务等等。那会变卦比较小但更加小心的文件。也惠及越来越好地开始展览测试。

控制器:提议调整器以“Ctrl”起首,如:

那篇blog特别关爱的是重型应用程序,作者首先付诸的建议是,尽量不要让使用变得太巨大。而应当编写小型、功效专注的、模块化的片段,然后稳步把它们构成起来,变得进一步大,从而组合你的行使。

AngularJS是由谷歌创造的壹种JS框架,使用它能够扩大应用程序中的HTML词汇,从而在web应用程序中运用HTML申明动态内容。在该团伙工作的软件工程师Brian
Ford
不久前创作了一篇blog,分享了什么样行使AngularJS创设大型Web应用的阅历。那么些经验对于使用别的JS框架创设大型应用的开拓者也极具借鉴意义。

接下去,Brian
Ford首先讲述了什么样组织利用的构造,然后对质量、测试、工具、服务器和创设过程做了归纳的下结论。

唯独,正如Brian
Ford所说,官方文书档案中并未有告诉开采者,当使用逐步升高,个中包含上万还是几十万行代码的时候,应该怎么着组织和管制它,而她的blog正是对那些剧情以及一级实行的总括。

指令:对指令使用app专用的前缀,那促进防止与第二方的零件重名。例如下边包车型客车代码中就用“btla”作为前缀:

依靠关系:诚如的话,服务、控件、指令等应当具有尽只怕少的重视性关系,那是可怜好的软件开辟实施,会带动测试。API应该分层。控件越发无法综合三种区别等第的虚幻。

服务:您可以动用上边包车型大巴秘籍宣示服务:

创设进程方面,笔者以为Angular还需求做更加多革新,作者在20一3年最大的目的正是要对此负有进献。笔者曾经宣布了ngmin,希望以此工具得以最终化解为生育环境最小化AngularJS应用的标题。

你是否营造过大型的Web应用,是不是也早已选拔过AngularJS框架,欢迎我们大快朵颐和议论。

angular.module('yourAppDep').directive('btlaControlPanel',function(){// ...});

模块:第二在app.js中定义和配置全数模块,如:

目录:建议在根目录中只放置index.html多少个文件,然后依据必要创设scripts、styles、views等目录,在scripts目录下,首先会存放app.js文件,然后在以下又能够创制三个子目录,如:controllers、directives、filters、services、vendor等,在内部分门别类地存放差异的始末。并且,随着你为使用创制越来越多内容,或然会大增越多子目录来存放各个文件。

模型:AngularJS作为JavaScript框架,其独到之处就在于让您能够完全掌握控制模型层。那是AngularJS的强大之处,因为应用程序的宗旨是你的多少,而各样应用之间的多少又有相当大分化。所以Brian
Ford强烈建议要精心思考选用和中数量,以及将会什么存款和储蓄数据。

在性质方面,AngularJS应用一般会丰盛特别快。大多数应用不供给做其它尤其的优化,由此,除非您意识严重的属性难点,不然就活该把时间花在任哪个地点方来改革应用。

接下来在模块中定义控件、服务等,如:

在采取的协会结构方面,Brian Ford针对各种方面给出如下建议:

……

提及底,Brian
Ford做出结论:AngularJS是一种相当适合编写大型应用的JS框架。你能够一贯拿来行使,它相当的慢,并且会对公司利用的布局很有援救。

angular.module('yourAppName',['yourAppDep']);
angular.module('yourAppDep');

而外上述剧情,Brian Ford还在篇章中针对质量、测试等方面提交了各类提出:

在工具方面,首先推荐使用Yeoman,从而得到最棒实施和很好的体系协会,其它还有AngularJS
Batarang,它对于调节和测试和找到质量瓶颈会很管用。

AngularJS的官网上付出了那一个框架的基本使用方法,如:

angular.module('yourAppDep').controller('MyCtrl',function(){// ...});

相关文章