TGu*_*ond 65 javascript c# javascript-framework angularjs
我被要求为我们的一个客户构建一个小型Web应用程序,并认为这可能是一个尝试构建Web应用程序的不同框架的好机会.我们构建的大多数应用程序都基于asp.net Web表单,我们还没有在MVC架构中做过任何事情,但我渴望用更合理的工具以更加结构化的方式开始构建Web应用程序.
我一直在研究像asp.net MVC这样的东西看起来相当不错,但我想知道有什么可以说使用像Google AngularJS框架这样的东西.
如果可能的话,我仍然希望能够使用c#编写我的服务器端代码,并且我还没有研究过AngularJS,知道这是否可行,尽管我假设我可以使用Web服务.
有没有人有使用AngularJS开发应用程序的经验,如果有的话,它是怎么做的,你能指出我在一些教程的正确方向吗?
psy*_*yho 104
在过去的几个月里,我们一直在AngularJS开发一个Swing胖客户端应用程序的端口,我认为值得推荐.至于学习资源,请查看官方项目网站(并确保阅读教程)和邮件列表(作者非常有帮助).
好东西:
坏事:
一些指针(如果您决定学习AngularJS):
Voj*_*jta 26
+1 @ psycho的答案
AngularJS是客户端框架,因此您可以在服务器上使用任何语言.它的设计与jQuery很好地配合,重点是测试......
以下是您可能会发现有用的一些资源:
一些示例应用:
适用于SenchaTouch的适配器:https://github.com/tigbro/sencha-touch-angular-adapter
适用于jQ Mobile的适配器:https://github.com/tigbro/jquery-mobile-angular-adapter
随意在邮件列表上提出任何问题!
我们仍然处于测试阶段,但Google已经有几个内部应用程序,由AngularJS提供支持.
更新(2012年7月26日):
AngularJS v1.0已经发布.
对于一些公开的AngularJS驱动的应用程序,请查看http://builtwith.angularjs.org
noo*_*rub 20
恕我直言为客户开发一些他们可能难以支持的东西是不专业的.您必须记住,您的客户很难聘请经验丰富的Angular专业人员,或培训他们自己的员工来攀登"陡峭的学习曲线".此外,到目前为止,文档并不是那么好.您可以在一会儿之后轻松回答"我如何将我的闪亮Angular应用程序连接到我客户的数据库?" 您的客户可以在未来的某个时间轻松获取现有代码并使其适应未来的潜在需求吗?说实话.
将简单可靠的LAMP开发与Angular进行比较.对于"小型Web应用程序",我真的相信专业人员应该给他的客户一些可维护和简单的东西.
这并不是说Angular不酷和性感等等.但除了最新的框架时尚之外,你还要考虑客户未来的可维护性.轻轻踩是我的推荐.首先使用Angular建立自己的网站,然后在一些信任的客户端给予您神话般的新技能之前,先看看您的想法.
Sut*_*bey 11
我记得在几个月前读了这篇SO帖子,脑子里也有同样的问题,我们决定继续使用AngularJS,以及我们对这个项目做出的最好决定.
我们正在使用AngularJS + ASP.NET MVC4 REST WebAPI.
在这样一个不错的客户端Javascript MVC框架之后,最需要的是,你只需要在服务器端与业务逻辑层进行交互的REST API层,而在服务器端没有MVC(ASP.NET MVC/Spring/Structs会感觉像旧的记忆).
你会发现Angular-UI好的附加组件(特别是网格)
在我们的项目完成后不久,我们可能会提出一些我们为开源世界编写的指令.
use*_*524 11
几个月来,我一直在研究AngularJS的优点,以作为我正在创造的产品的核心框架.AJS的许多方面都值得学习.是的,有一点学习曲线,但它非常值得,特别是如果你希望更多地控制客户端功能.
JQuery在运行时操作DOM,而AJS在JS渲染生命周期中处于自己的位置.这允许您通过创建HTML元素和属性来教授DOM新技巧.这非常非常强大.正如您所能做的那样,无论您的目的和需求如何,都会引入新的Element行为.在AJS中,这些自定义HTML属性/元素称为指令.由于能够制作自己的指令,您可以构建当前HTML所没有的功能,从而推出现在和将来在所有现代浏览器上运行的功能.在诱导新行为的许多方法中,AJS似乎是最安全的方向,因为他们选择如何实施它.
在AJS中,JQuery的性能大幅提升.
我喜欢双向数据绑定的简单性,以及客户端MVC模式中关注点的分离,如上所述,它提供了极大的可测试性.范围对象是视图(HTML),模型(您的数据)和自定义控制器之间的粘合剂.范围提供对父属性的访问,并且可以在兄弟级别隔离,这对于某些可重用模板很重要.
模板可以在您的应用程序中创建和重用,可以包含0个或更多自定义指令.
我一直在使用PRISM和MEF等框架,但我发现AJS具有这些.NET框架中存在的大部分相同功能,但占用空间为29K.有传言说他们正致力于延迟加载,如果提供它将提供一些非常有趣的LOB类型功能.
有许多UI框架是为AJS构建的,但您可以根据需要包装任何第三方控件库,只需付出一些努力.诀窍是确保当这些第三方控件引起更改时,确保使用其apply方法正确通知AJS.
如果您在VS 2012中将AJS与MS TypeScript结合使用,它可以管理和构建一些非常令人印象深刻的项目,这些项目对于那些对VS中的项目更为满意的人来说非常有用.
看看AJS还有很多其他原因,但是如果你正在考虑像KnockOut这样的框架,我会强烈推荐使用AJS,而不管它是否存在学习曲线.Knockout是一个库,AJS是一个框架.
小智 8
到目前为止,我认为谷歌的Angular很棒.特别喜欢数据绑定和依赖注入.
对于其他js框架,有knockout.js,backbone.js等.这里有一些帖子: backbone.js和/或knockout.js中的angular.js示例
我意识到这篇文章已经过时了,你还没有和Angular一起去过,但我有类似的背景,而且在问这个问题的时候我和你一样.
因此,为了未来访客的利益,我发现一些"风险"和资源链接有用......
最后,我发现了学习这些东西的三个最好的资源
| 归档时间: |
|
| 查看次数: |
23609 次 |
| 最近记录: |