提问



这是AngularJS页面的内容描述:



  AngularJS就像HTML一样,如果它是为构建Web应用程序而设计的。具有数据绑定,MVW,MVVM,MVC,依赖注入和强大可测试性故事的声明性模板都使用纯客户端JavaScript实现!



那么MVW代表什么呢?
(考虑到MVC,MVVW,MVP等争吵,我猜无论如何,Model-View-Whatever=P)

最佳参考


无论如何,它确实适用于你[1]



   MVC vs MVVM vs MVP。很多开发人员都有一个有争议的话题
  可以花几个小时辩论和争论。

  
  几年来,AngularJS更接近MVC(或者更确切地说是其中之一)
  客户端变种),但随着时间的推移,由于许多重构
  和api改进,它现在更接近MVVM - $ scope对象
  可以被认为是由a装饰的ViewModel
  我们称之为Controller的功能。

  
  能够对框架进行分类并将其置于MV *之一
  水桶有一些优点。它可以帮助开发人员获得更多
  通过使其更容易创建心智模型来使其舒适
  表示正在使用的构建的应用程序
  框架。它还可以帮助建立使用的术语
  开发人员。

  
  话虽如此,我宁愿看到开发人员构建踢屁股的应用程序
  精心设计并遵循关注点分离,而不是看到它们浪费
  时间争论MV *废话。因此,我在此声明
  AngularJS是MVW框架 - 模型 - 视图 - 随便。 哪里随便
  代表对你有用的东西


  
  Angular为您提供了很大的灵活性,可以很好地分离演示文稿
  来自业务逻辑和表示状态的逻辑。请用它燃料
  您的生产力和应用程序可维护性而非加热
  讨论那些在一天结束时并不重要的事情
  许多。


其它参考1


为了完整起见,这里提到的首字母缩略词:



  MVC - 模型 - 视图 - 控制器

  
  MVP - 模型 - 视图 - 演示者

  
  MVVM - Model-View-ViewModel

  
  MVW/MV * - 模型 - 视图 - 无论[5]



还有一些:



  HMVC - 分层模型 - 视图 - 控制器

  
  MMV - 多用途模型视图[7]

  
  MVA - 模型 - 视图 - 适配器[8]


其它参考2



  话虽如此,我宁愿看到开发人员构建踢屁股的应用程序
  精心设计并遵循关注点分离,而不是看到它们浪费
  时间争论MV *废话。因此,我在此声明
  AngularJS要 MVW框架 - 模型 - 视图 - 随便。无所不在
  代表对你有用的东西。




致谢:AngularJS Post - Igor Minar [9]

其它参考3



  1. https://en.wikipedia.org/wiki/MVW

  2. https://en.wikipedia.org/wiki/AngularJS

  3. https://angularjs.org/



AngularJS - 超级英雄JavaScript MVW框架[10] [11] [12]



  1. https://plus.google.com/+AngularJS/posts/aZNVhj355G2



[13] [14]

其它参考4


我认为MWV(Model View Whatever)或MV *是一个更灵活的术语,用来描述Angularjs在我看来的一些独特性。它帮助我理解它不仅仅是一个MVC(模型视图控制器)JavaScript框架,但它仍然使用MVC,因为它有一个模型视图和控制器。


它也可以被视为MVP(模型视图展示器)模式。我认为Presenter是Angularjs中View的用户界面业务逻辑。例如,通过使用可以格式化数据以进行显示的过滤器。它不是业务逻辑,而是显示逻辑,它让我想起了我在GWT中使用的MVP模式。


此外,它还可以是MVVM(模型视图模型),View Model部分是两者之间的双向绑定。最后,它是MVW,因为它有其他模式,你可以使用以及@Steve Chambers提到的。


我同意其他答案,在这些术语上迂腐可能是有害的,因为重点是理解术语中的概念,但同样的道理,完全理解这些术语有助于他们在设计应用程序代码时,知道什么去哪里和为什么。