DWR之我见-MVC的回归

来源:互联网 发布:能年玲奈 知乎 编辑:程序博客网 时间:2024/04/29 03:17
 如果说Hibernate 等OR映射革掉了应用程序种很难操作的散乱的SQL的命,实现了从数据库到JAVA对象的自动转化;
那么DWR就是革了前台展现层Javascript,非对象化编程的命,实现了从Java对象到UI对象(javascript对象)的自动转化,
从而无论后台,还是前台开发人员都是操作的同一个模型数据,真正实现了展现层与数据层之间的分离,更方便与程序的控制,展现层的实现更加人性化,.
 我们对比一下,传统MVC的实现说穿了只是实现了从服务器端到客户端数据的直接显示,实际只是起到了视图导航的作用.没有对象化,象struts,JSF的MVC实现,
虽然完成了从java数据到客户端的显示,但是只是单纯的显示出来,所使用的代码也只有程序员能够懂,而且这些代码是侵入式的,完全侵入了界面设计,
界面实现之丑陋,UI层的代码之难看,可以说完全没有考虑到UI层的设计开发人员,是与界面美化程序完全脱节的一个设计.
没有分离数据与展示界面,难道说叫一个美工也要去学习哪些晦涩的tag代码吗?而且这些代码在各个框架之间不是通用的,有很大的学习成本. 
 而DWR仅仅实现的只是一个桥梁作用,完成从JAVA到UI对象的映射,它即大功告成一件.页面依然使通用的HTML语言,
任何HTML编辑工具都可以对它编辑,UI语言易懂,易用.
 DWR真正分离了模型数据与展示界面,应为它从服务器返回的直接就是javascript对象,而不是象传统模式下,包括UI控制语言,界面的设计通通都传回来
从而使得界面设计可以做得更灵活,可以通过JavaScript语言将数据展现页面做得更加易于操作,更接近人类得认知模式.
 DWR可以实现更加平滑,更加接近窗口程序的模式,由于它的数据传递使用xhttp实现的,它的取数据不用刷新整个窗口,不用每次点一个保存按钮
就要从服务器端从新取下一个新的页面,而DWR不用传递哪些冗余的界面代码,之传递模型数据,是网络的利用效率更高,服务器的负载更小.
可以更快的响应用户的点击.
原创粉丝点击