c# - Google AngularJS 框架 - 值得冒险吗?

标签 c# javascript javascript-framework angularjs

有人要求我为我们的一位客户构建一个小型 Web 应用程序,我认为这可能是一个尝试不同框架来构建 Web 应用程序的好机会。我们构建的大多数应用程序都基于 asp.net web 表单,我们还没有在 MVC 架构中做任何事情,但我渴望开始使用正确的工具以更结构化的方式构建 web 应用程序。

我一直在研究像 asp.net MVC 之类的东西,它们看起来相当不错,但我想知道使用 Google AngularJS 框架之类的东西是否有什么可说的。

如果可能的话,我仍然希望能够使用 C# 编写我的服务器端代码,而且我对 AngularJS 的研究还不够多,无法知道这是否可行,尽管我假设我可以使用 Web 服务。

有没有人有过使用 AngularJS 开发应用程序的经验?如果有,感觉如何?您能否为我指明一些教程的正确方向?

最佳答案

在过去的几个月里,我们一直在用 AngularJS 开发一个 Swing 胖客户端应用程序的端口,我认为它值得推荐。至于学习资源,请查看官方项目站点(并务必阅读教程)和邮件列表(作者非常乐于助人)。

好东西:

  • 出色的可测试性
  • 双向数据绑定(bind)是一个非常强大的特性,一旦你“掌握”它就会非常有用
  • 在我看来,AngularJS 模板比使用数据属性或“特殊”CSS 类来标记执行某些操作的元素要安全得多
  • 它大大减少了使用 jquery 插件的需要,因为在 AngularJS 中实现该功能非常容易(比如树、选项卡、 Accordion 等)

不好的地方:

  • 学习曲线似乎很陡峭(我没有遇到太大问题,但我看到有些人为此苦苦挣扎)
  • AngularJS 中的验证暂时很糟糕(一个新的实现正在开发中)
  • 并非所有的库/jquery 插件都能很好地与 Angular 配合使用,通常你必须将它们包装起来
  • API 仍在完善中,因此期待重大更改(尽管频繁发布和非常好的更改日志不是大问题)
  • 在一个页面上有几千个绑定(bind)之前,性能还可以 - 大多数时候这不是限制,但在某些情况下这可能会成为问题。

一些建议(如果你决定学习 AngularJS):

  • 有些人确实过度使用了小部件。根据我的经验,最好使用 HTML“部分”+ 服务,并且只偶尔使用小部件。
  • 阅读库的源代码 - 这是学习 angular 知识的最佳场所
  • 在服务/ Controller 中没有 DOM 操作
  • 如果您使用 css 类绑定(bind)到事件,那您就错了

关于c# - Google AngularJS 框架 - 值得冒险吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7650674/

相关文章:

c# - 如何修改并保留 "dynamic"对象中的成员/嵌入数组(使用dynamic关键字声明的对象)

c# - 如何在 lambda Entity Framework 中动态排序?

javascript - 如何在内存中 AngularJS 处理期间显示图像

javascript 以分号形式输出,每 block 50 个

javascript - ng-model 防止选中 ="checked"默认选择单选按钮

c# - RestRequest 类在哪里?

c# - 如何确保我下载的文件已经完成?

javascript - 模态视图重新加载内容(Bootstrap MVC ASP.NET)

node.js - Angular.js/D3.js/Node.js 之间有什么区别和相似之处

javascript - 动态加载脚本会改变其行为