论坛首页 AJAX版 AJAX

原来MVC可以简单至此

浏览 248 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
时间:2008-05-10
因为想尝试WebC/S的新架构模式,最近一直在研究用Ajax写客户端,研究纯客户端的MVC。
看到InfoQ上这篇关于SOFEA的文章(http://www.infoq.com/cn/news/2008/04/tsa-working-group-site)推荐,下了个JavaScriptMVC(http://javascriptmvc.com/)来看了看,发现纯客户端的MVC果然如我所料,比服务器端的MVC简单了不止是一点点,甚至比我想象中还要更简单。请看代码,这是一个最简单的例子:
<div class='todo'>TODO: Learn JavaScriptMVC</div>

视图代码,来自index.html
Controller('todos',{
	mouseover: function(params){
		params.element.style.backgroundColor = 'Green';
	},
	mouseout: function(params){
		params.element.style.backgroundColor = '';
	}
});

控制器代码,来自controllers/todos_controller.js

这就是控制器么,这有哪一点长得像Struts中的Action了?这不就是DHTML中的事件处理函数了么?然后转念一想,回忆一下以前用VB和Delphi编程时的情况,不正是如此么,都是先画好界面,然后从界面出发,定义各种事件处理方法。那里的控制器,不正是这样的事件处理方法么。其实Struts中的Action,也就是这样的事件处理方法,不过是在服务器上监听客户端的事件而已,因此才会增加了那么多复杂度。原来这个客户端的MVC,我们其实一直在用的,只是太普通了而忘记了这个概念而已,除非你完全不用JavaScript。
   
时间:2008-05-10
好东西
偶也是javascript做MVC的支持者.
这个很值得学习和研究.
看到人家已经走得很远了.很惭愧呀!
同时也很庆幸,可以省不少力气了.
jmvc是apache 2.0 license
呵呵可以放心使用了.
   
0 请登录后投票
时间:2008-05-10
并且我对前台模板的写法有了新的想法:
流控语法标签
<code lang="前台模板" class="displaynone todelete"></code>
当然里面的lang的值是你规定的值了,
class的值表示了浏览不显示且应该删除掉.
   
0 请登录后投票
时间:2008-05-10
粗略看了一下源代码发现,这个是个整合的方案,
不是完全原发,里面的版权比较复杂
有:
Artistic license
BSD license
LGPL license
MIT license
晕了.
   
0 请登录后投票
论坛首页 AJAX版 AJAX

跳转论坛:
JavaEye推荐
    快速回复 引用上一条消息 (Alt+S)