范文健康探索娱乐情感热点
投稿投诉
热点动态
科技财经
情感日志
励志美文
娱乐时尚
游戏搞笑
探索旅游
历史星座
健康养生
美丽育儿
范文作文
教案论文

没有后端基础如何理解MVCMVP和MVVM,可以以JavaScript举例吗?

  谢谢邀请!
  什么是MVC以及它的作用?
  MVC是一种分层架构模式,M代表数据模型以及相关数据处理逻辑,V就是用户界面,C代表控制器(可以认为它是逻辑处理路由)!通常的情景是用户操作了可视界面(V),用户的信息传递给了控制器,控制器把用户指令分发给对应的数据层(M),最终数据层处理好数据后,将最新的数据反映到界面上!MVC的作用是将以前杂乱的代码分层解耦,使得代码具有更好的维护性!
  如何理解MVC?
  在后端的知识体系中,MVC更容易理解!不过在前端中,我们有nodejs可以做后端,我们就拿nodejs举例!
  我们把用户操作的界面看作View层,用户操作浏览器后,请求来到服务端,路由将请求交给Controller,Controller调用对应的服务处理数据,数据处理后返回响应!这里我将Router和Controller放在一起,Service和db放在了一起!这样代码调理清晰,对代码增删改查都会非常方便!
  如果仅仅是浏览器端的逻辑,也可以采用MVC架构,例如Backbone.js,方式如下:
  1、dom 是 View层
  2、对dom的事件绑定,可以看作Controller
  3、将原始数据和数据的操作封装成数据模型(对象)
  4、Controller调用不同的数据模型处理数据
  5、数据处理完成后,采用观察者模式及时更新View
  什么是MVP、MVVM?
  其实MVP和MVVM是MVC的变种,Model和View没有直接的联系了,而是通过中间的那一层进行桥接!目前市场比较流行MVVM模式,比如VUE、REACT等!
  总结
  不管是哪一种架构模式,其实都是为了方便我们开发和维护,个人认为没有严格的标准去限定有多少层以及层与层的联系,只要适用于业务就是好的架构模式!
  MVC、MVP、MVVM这些模式是为了解决开发过程中的实际问题而提出来的,目前作为主流的几种架构模式而被广泛使用。
  MVC、MVP、MVVM 三者特点
  MVC(同步通信为主) :Model、View、Controller
  MVP(异步通信为主) :Model、View、Presenter
  MVVM(异步通信为主):Model、View、ViewModel
  什么是MVC 模式?
  MVC 模式代表 Model-View-Controller(模型-视图-控制器) 模式。这种模式用于应用程序的分层开发。Model(模型) - 模型代表一个存取数据的对象或 JAVA POJO。它也可以带有逻辑,在数据变化时更新控制器。View(视图) - 视图代表模型包含的数据的可视化。Controller(控制器) - 控制器作用于模型和视图上。它控制数据流向模型对象,并在数据变化时更新视图。它使视图与模型分离开。MVC是比较直观的架构模式,用户操作->View(负责接收用户的输入操作)->Controller(业务逻辑处理)->Model(数据持久化)->View(将结果反馈给View)。
  什么是MVP模式?
  MVP 全称是Model - View - Presenter ,是模型(model)-视图(view)-呈现器(presenter)的缩写。
  MVP是把MVC中的Controller换成了Presenter(呈现),目的就是为了完全切断View跟Model之间的联系,由Presenter充当桥梁,做到View-Model之间通信的完全隔离。Model:业务逻辑和数据处理(数据库存储操作,网络数据请求,复杂算法,耗时操作)。View : 对应于Activity,负责View的绘制以及与用户交互。Presenter:负责完成View于Model间的交互 (有一点还需要注意,presenter是双向绑定的关系,因此,在设计的时候就要注意接口和抽象的使用,尽可能的降低代码的耦合度,这也是mvp的宗旨)。
  什么是MVVM模式?
  MVVM(Model-View-ViewModel)是一种软件设计模式,由微软WPF(用于替代WinForm,以前就是用这个技术开发桌面应用程序的)和Silverlight(类似于Java Applet,简单点说就是在浏览器上运行WPF)的架构师Ken Cooper和Ted Peters开发,是一种简化用户界面的事件驱动编程方式。由John Gossman(同样也是WPF和Sliverlight的架构师)与2005年在他的博客上发表。
  MVVM源自于经典的MVC(Model-View-Controller)模式。MVVM的核心是ViewModel层,负责转换Model中的数据对象来让数据变得更容易管理和使用。
  如果说MVP是对MVC的进一步改进,那么MVVM则是思想的完全变革。它是将"数据模型数据双向绑定"的思想作为核心,因此在View和Model之间没有联系,通过ViewModel进行交互,而且Model和ViewModel之间的交互是双向的,因此视图的数据的变化会同时修改数据源,而数据源数据的变化也会立即反应到View上。
  MVVM已经相当成熟了,主要运用但不仅仅在网络应用程序开发中。当下流行的MVVM框架有Vue.js,Anfular JS
  为什么要使用MVVM?
  MVVM模式和MVC模式一样,主要目的是分离视图(View)和模型(Model),有几大好处低耦合:视图(View)可以独立于Model变化和修改,一个ViewModel可以绑定到不同的View上,当View变化的时候Model可以不变, 当Model变化的时候View也可以不变。 可复用:你可以把一些视图逻辑放在一个ViewModel里面,让很多View重用这段视图逻辑。 独立开发:开发人员可以专注于业务逻辑和数据的开发(ViewMode),设计人员可以专注于页面设计。 可测试:界面素来是比较难以测试的,而现在测试可以针对ViewModel来写
  我王者局局mvp
  不需要后端基础来理解mvc mvp mvvm。
  mvc 就是模型试图控制器,模型类似数据schema,就是这个要渲染视图的数据结构;v就是模板,用于将数据格式化展示;c就是控制器,控制使用哪个模板,并将model与视图做映射,这样模型的数据就绘制到视图了。一般在controller和model中间会加一个service来处理下业务。
  mvp跟mvc挺像,所不同是p是presenter,用来替代c,这种模式下,不再是model直接映射到模板,而是通过presenter来把model数据拿到,然后由presenter这个代理器来将数据写入到视图,这样视图与model进行了解绑,开发变得更灵活,presenter还可以操控数据。
  mvvm就是从模型数据直接到视图再从视图到模型。这样去掉了v或者p,不再需要一层控制器或者代理器。这样的好处就是,针对数据模型编程,改变了数据也就是改变了视图,由框架来把视图和数据的联动搞定,开发者更多关心是数据逻辑开发,而复杂的dom操作,事件处理交给了框架。这样大型开发会变得容易些。m到v就是要监听到数据的变动,比如defineProperty、proxy、不停数据检测等方式来获知数据发生了改变,然后将改变后的数据更新到视图上;v到m就是监听dom的更新事件,凡事dom更新则将对应model更新。
  其实实际工作中仍然会三者有些结合或借鉴。目前大多采用mvvm框架,但是模型仍然是需要独立的,而且也需要service来进行承接,视图与模型的对应也可以视图对应的代理器完成。
  有时候我们为了实现松耦合和代码的易维护性,尽量将数据和视图以及连接器等解藕,这时候你觉得哪种实践最合适就怎么做,也不必拘泥于某个固定的形式。
  汗啊。JS不就是MVC中的C吗?
  这么一说不就很容易理解了吧?
  HTML是M
  CSS是V
  M:有什么
  V:什么样
  C:怎么样
  mvc和mvp基本是一个东西,区别只在于view是否直接操纵model,mvvm则是双向绑定,view可以直接修改model,反过来model的改变直接反应在view上。从js来看,node的express就是mvc,而angular则是mvvm

提车5天,高速电门失灵?这个结局就比较敞亮!这几日,特斯拉油门失控,速度飙升的新闻闹得沸沸扬扬,一时间无法判定对与错。特斯拉事故发生在11月5日,而在11月2日,smart精灵1同样发生了一起失控事件,这件事的处理结果就显得汕纺臻品高品质产品推荐曼娜针织内衣汕纺臻品高品质针织内衣推介01期在5月28日首届中国潮汕国际纺织服装博览会上,汕头市纺织服装产业协会首批团体标准正式发布,确定了高品质针织家居服高品质文胸高品质针织保暖内衣高品质针情感文案,日常更新我最害怕的俩种态度,一种是暧昧不明,一种是忽冷忽热。相传幸福是个美丽的玻璃球,跌碎散落在世间的每个角落。像所有传闻里陈词滥调的故事你离开了,我才如此想念。眼泪是真的,心酸也是真的,降低居民购房成本支持刚性和改善性住房需求多部门出台改善住房普惠性政策观察新华社北京11月18日电题降低居民购房成本支持刚性和改善性住房需求多部门出台改善住房普惠性政策观察新华社记者王优玲郑钧天今年以来,多部门出台税收金融普惠性政策,降低居民购房成本,支三看卿卿日常才懂爱财,爱美女的三少主,才是最狠的角色卿卿日常是一部喜剧,里面的每个人设都个性分明,自带喜感,看着都要笑出腹肌。更让人意外的是,这部剧没有狗血的小三插足,女二黑化的剧情。刚开始让人捏了一把汗,以为嫁进来要开始搞事的元英将中小学生普通话水平划分为6级,义务教育加入普通话水平测试秦始皇统一六国,史称千古一帝。秦国统一天下以后,进行了多项改革,比如,书同文,车同轨,统一度量衡等。虽然,秦始皇统一天下以后,中国自此只流行一种文字直到如今,但是各地的发音还是有很你新买的电动车,可能明年就过气了?知嘹汽车小凡中国作为全球最大的汽车市场,传统燃油车型与新能源车型竞争力日益激烈。有数据显示,今年110月,中国新能源汽车销量高达528万辆,同比增长1。1倍。与此同时,新能源电池作因为抑郁症,我女儿跳楼了!孩子有这些表现是在求助,别忽视前几日,有位宝妈在社区群说,自家亲戚一个尚在上学的姑娘,在被抑郁症折磨了几年后,跳楼自杀了。群中的寥寥数语,在现实生活中是一条条鲜活的生命离去。抑郁症,看似离我们生活很远,实际上可研究表明四脚行走的巨型袋鼠早在2万年前就已存在一项新的研究表明,用四条腿穿越巴布亚新几内亚高原的巨型袋鼠可能就生活在2万年前。为了进一步了解巴布亚新几内亚迷人的自然历史,弗林德斯大学的古生物学家和澳大利亚国立大学(ANU)的考地球重达60万亿吨,为什么能漂泊在空中,而没有向下坠落当我们向上抛一个物体,这个物体最终会掉到地面上来,实际上就涉及到一个万有引力的问题了。学过物理的我们都知道,物体之间存在着相互的吸引力。同样,我们向外抛出的这个物体和地球之间也存在国羽7胜1负!刘雨辰报得奥运决赛失利之仇!石宇奇逆转世锦赛冠军北京时间11月18日,2022澳大利亚羽毛球公开赛super300继续进行,本日国羽女单女双混双独苗都顺利晋级半决赛,其中余弦打满三局,21逆转两届世锦赛亚军组合福岛由纪广田彩花,
普京国情咨文暂停加入核协议支持军事和经济俄罗斯总统普京2月21日在莫斯科商栈展览中心向联邦议会发表国情咨文。演讲提纲如下我今天发表国情咨文,是在大家都知道的非常复杂的时刻,是在对我国来说里程碑般的时刻,是在全世界发生不可国货走出去推动全球经济创新合作在位于美国新泽西州的远大空气产品示范店内,当地顾客在选购商品。受访企业供图宁德时代在德国图林根州阿恩施塔特的动力电池工厂。受访企业供图巴西短视频博主苏萨和杰雷萨蒂夫妇在房车旅行途中预期有所改观,风险总体可控房地产市场有望稳步复苏经历了持续低迷,部分城市房地产市场在今年年初呈现成交量增价格企稳的回暖迹象。如何看待一些城市房地产市场的复苏?房地产市场调控政策还可从哪些方面进一步优化?部分城市市场回暖国家统计局营养医学效果分享调理松解拯救33岁卵巢囊肿患者!王芳芳女33岁女性的天敌卵巢囊肿服用抗抑郁药,病情加重!以前的我经常失眠多梦,心情抑郁,总是胡思乱想,敏感多疑,家人就以为我抑郁了,非要让我吃抑郁药。结果吃了一段时间,病情并没有好胆囊切除后,仍需要注意饮食!胆结石后期,由于胆阻疼痛厉害,就必须采用胆切除手术。虽然现在的胆结石手术相对比较成熟,成功率相当高,但胆囊一旦切除对一部分病人的影响还是有的,尤其是对人的消化系统的影响特别的大比较大罗算球王吗?大罗算球王吗?年梅西拿下世界杯冠军,这个称号终于引来了它的第三个主人。那么在马拉多纳之后,梅西之前,这段岁月里,足坛谁曾经拥有或者接近过这个称号呢。想必70后,80后心中那个名字已特级大师赵国荣的象棋路和他的爱人牛力力游戏新春创作纪我一直推崇赵国荣的棋艺,更为他的人格魅力所感动。有人形容他的棋艺风格如同德国战车,有人说他的棋艺特点刚柔并济南北兼收厚积薄发,我觉得他的棋更像勃拉姆斯的音乐一个诚实的一个杰出的抒情诗人一个严谨的沉思者纪念冯至先生逝世三十周年冯至(19051993),原名冯承植,他一生获得国内外多项文学奖项,被联邦德国政府授予代表最高荣誉的大十字勋章。作为诗人,他提倡洋为中用,为中国现代诗体在初生阶段的发展做出了很大的93公斤!他们拆毒包拆到手抽筋近日,云南德宏边境管理支队对外通报称,该支队木康边境检查站成功破获一起特大贩毒案,打掉了一个由边境地区向内地贩卖运输毒品的特大贩毒团伙。木炭内夹有大量可疑物民警拆毒包拆到手抽筋1月ChatGPT之父SamAltman七年前访谈马斯克创建OpenAI的初衷2016年9月,现今OpenAICEO,ChatGPT之父,时任创投公司YCombinator的总裁SamAltman在特斯拉加州弗里蒙特工厂采访了埃隆马斯克。马斯克阐述了创建Op95后非遗传承人荡起湖颖粼粼为甘肃特产连续直播带货一星期后,姚玉粼的声音变得嘶哑,说上几句话就会引发一阵咳嗽。与姚玉粼每况愈下的咽喉健康情况形成对比的是不断攀升的直播销售额,截至目前,总收入约7万元,西和麻纸