angularjs的MVC模式

1.angularjs的MVC模式

     做过前后端交互的童鞋们,应该对MVC的理解都比较清晰了。如果纯前端的可能不太理解。楼主本是JAVA出身,大家都知道JAVA几乎是纯服务端的应用,当然随着技术的进步,每一种编程语言都不可能是纯后端服务端的,多多少少会有跟前端交互的技术比如JAVA中的 struts2的jsp标签。但这种东西毕竟不是纯前端的技术,很有可能在使用一些前端技术的时候会出现莫名的冲突。有时候struts标签会跟jquery冲突,这就很尴尬了,所以现在我们的项目基本上都是前后台分离,只在协议上进行交互,这样可以很大程度上避免一些不必要莫名的BUG。
  • M:model层,即数据模型层,底层数据库交互
  • V:view层,即视图层,负责展现给用户,与用户进行交互的
  • C:controller层,及控制层,负责逻辑控制以及业务逻辑处理的service层
       简单的说一下MVC吧。我们知道几乎所有的操作都是由前端发起的,用户的操作才会引起一连串的数据变化。就比如说一个简单的查询操作。用户操作前端页面即我们说的view层,然后会以http或者https协议的形式,传递给后台服务端,服务端接到请求,就会交给控制层进行处理,而控制层一般只负责逻辑控制,把你想要的数据展示到什么位置,哪个页面。而控制层接收到请求,会将这种请求交给service层进行处理,service则负责业务处理,你需要怎么样的数据, 怎样格式的数据等,service进行一番分析,然后交给DAO去数据库取数据,DAO取出数据交给service,service对收到的数据进行处理,处理成适合前端的数据格式,然后将数据交给controller层,controller层将数据返给前端展示,这样用户就可以看到他想要的数据更新,完成一次简单的人机交互。MVC的最大优点就是层层分离,减少各模块之间的耦合度。耦合度是个什么概念呢?就向我们做饭的时候,乱炖就是一种耦合度极强的菜,他把前端代码合后端代码掺和在一起,一旦我感觉到可能放西红柿要比土豆好,那么我就需要去更换所有的土豆,那我需要把整个锅里土豆都翻一遍找出来,然后把西红柿塞到里面去,这就很麻烦了,那么宁可再重新做一锅也不愿去挨个的替换掉。然而如果我们换种方式使用这种MVC模式来做饭我一层层的相对独立,独立之后,我想更换那一套东西,就不需要翻江倒海似的去搞乱整个项目。这种情况下,耦合度就低了。

                                      

简答的看一下这张图,从图中可以看出angularjs也是可以分为MVC模式的。
  • 模型/Model - 一个负责维护数据模式的最低水平(由$scope来承担)。
  • 视图/View - 负责显示所有或数据到用户的部分(html,bootstrap来承担)。
  • 控制器/Controller - 软件代码控制Model和View之间的相互作用(由Controller承担),唯一有点不同的是,controller层也负责业务处理和逻辑控制。
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值