Yok

苦海无涯,回头是岸啊

MonoRail FAQ

MonoRail的文档已经比较全面,我再写教程似乎是重复劳动了。所以这里以FAQ的形式把我的心得分享出来

  • MonoRail稳定吗?
    稳定。不然我早被老板炒了:)
  • MonoRail易学吗?
    容易。不然我还是会被炒的。对一个了解xhtml和js的程序员来说,它比webform还要简单,一般一周内就能熟悉了。遗憾的是相当一部分程序员对web客户端技术嗤之以鼻 ,所以在用人方面比webform要求要高
  • MonoRail会比Webform慢吗?
    不会。MonoRail的Controller,Action调用和参数绑定都是通过反射完成,而且其中nvelocity模板还是解释执行。尽管如此,MonoRail性能还是跟webform不相上下(视乎具体情况而定,界面越复杂MonoRail越显性能优势)。因为webform控件的结构和生命周期太复杂,viewstate更是性能杀手。如果使用编译执行的brail模板引擎,性能还会进一步提高
  • MonoRail不能用webform控件,是不是倒退回asp时代了?
    不是。asp是很恶心的,代码跟界面混合在一起;MonoRail实现了MVC模式,模板虽然有if,有foreach,但是这是属于“表现逻辑”,界面和业务逻辑是能很好的分离的。而且在表现层后面,它还有强大的.net framework支撑,还可以配合windsor,各种facility和orm,让你分离关注点,轻松并专注的完成各种任务。至于界面复用这方面,可以使用ViewComponent和Helper
  • NVelocity模板里怎样访问索引器?
    vtl不支持索引器,但是索引器其实是c#内部对get_Item(index)和set_Item(index)这对方法的包装,所以$myList.get_Item(1)这样就可以了
  • parse,Helper和ViewComponent都可以实现界面的复用,怎样在他们之间进行选择?
    parse是实现模板嵌套的手段,Helper是被设计为通过方法调用返回视图片段的类,ViewComponent则复杂的多,有自己的后台逻辑和视图模板文件,并且可以跟Windsor集成。所以parse适合用来复用静态(或只引用了公用的变量,例如当前登录的用户名)的内容,Helper适合用来处理表现逻辑,而涉及到业务逻辑的地方应该使用ViewComponent
  • MonoRail怎样实现Ajax?
    严格来说这个与MonoRail无关,只是MonoRail提供了AjaxHelper,而我一般直接使用prototype的Ajax相关功能。Ajax无非就是通过javascript往服务端发送请求,或返回数据,或返回html片段,用MonoRail处理Ajax请求的开发体验跟处理普通页面是完全一致的,所以在你熟悉javascript的前提下,做Ajax开发不需要额外的学习成本
  • MonoRail可以用页面缓存吗?
    目前release的版本没有缓存功能,但是svn上的版本早就有了,只需加一个attribute:
    http://svn.castleproject.org:8080/svn/castle/trunk/MonoRail/Castle.MonoRail.Framework/Attributes/CacheAttribute.cs
    在用旧版MonoRail的朋友可以用我写的facility:
    http://www.cnblogs.com/Yok/archive/2007/01/23/627269.html

不了解MonoRail的朋友请看我的MonoRail专栏

标签: MonoRail

posted on 2007-09-14 15:49 Yok 阅读(2959) 评论(15) 编辑 收藏

评论

#1楼 2007-09-14 15:56 1-2-3      

头一次听说MonoRail,是开源框架么?微软的脚步太快,变招又多,总爱藏一手,所以总是担心这些第三方的东东跟不上。  回复 引用 查看   

#2楼 2007-09-14 19:26 jejwe[未注册用户]

楼上应该了解下,确实是个开源项目
已经有几年发展了,比较成熟的
 回复 引用   

#3楼 2007-09-14 21:02 Spring.Cheung      

这个,就不考虑了,还是等等SilverLight或WPF吧
 回复 引用 查看   

#4楼 2007-09-14 22:00 deerchao      

@Spring.Cheung
SilverLight/WPF真正能在客户端流行起来估计还得三四年.
Linq 2 Sql本身还不够成熟.目前还是用Castle提供的技术方便.
 回复 引用 查看   

#5楼[楼主] 2007-09-14 22:14 Yok      

@Spring.Cheung
monorail跟silverlight无关,它只是个web framework,与webform对应
 回复 引用 查看   

#6楼 2007-09-15 00:16 holygrace[未注册用户]

楼主开发项目的团队有几个人,都会monorail吗?我们很多时候学习东西都只能自我娱乐一下,而不能在实际项目中用,因为不是所有团队成员都会这个东西,想年初,我在团队中推广jquery都费了好大劲,何况monorail这种影响整个开发环节的东东!  回复 引用   

#7楼[楼主] 2007-09-15 00:57 Yok      

@holygrace
我们公司开发部12人,除了部门经理和一个java程序员,其他人都用monorail,基本上都是进公司后看了文档和demo后就能上手,资历从应届大专生到6年工作经验的都有。当然我们在招聘时比较严格,那些只会拖控件后写sql的coder是不能进来的。
精通js和xhtml的只有2人。但公司的设计部有专职的xhtml制作人员,mvc模式能更好的把开发和ui工程师的职责分离。
如果monorail对你来说是“影响整个开发环节的东东“,那么证明你的表现层跟业务逻辑是严重耦合的,monorail只是一个web开发框架而已。
 回复 引用 查看   

#8楼 2007-09-15 09:55 阿布      

--引用--------------------------------------------------
Spring.Cheung: 这个,就不考虑了,还是等等SilverLight或WPF吧

--------------------------------------------------------
完全不是一个类型的东东


我觉得monorails并不算太复杂,确实看看文档就能上手了.
我们有不少项目都用monorails.现在虽不能说是推广.但也在教一些同事在用monorails开发
 回复 引用 查看   

#9楼 2007-09-16 13:27 户籍民警      

幸虧你們老板不知道java,要不就吧你炒了  回复 引用 查看   

#10楼 2007-09-18 13:08 ws[未注册用户]

还是不错的东西  回复 引用   

#11楼 2007-10-06 20:16 轩辕武[未注册用户]

我觉得这东西不错!  回复 引用   

#12楼 2007-12-08 01:36 sa1[未注册用户]

Yok 是好同志啊  回复 引用   

#13楼 2007-12-25 21:10 fangyifeng[未注册用户]

他的实际性能如何?我很关心这个问题 。。  回复 引用   

#14楼 2008-05-05 17:36 皮蛋[未注册用户]

哇~~不是吧,又来一个新的应用
那不会被搞死去啊,总是跟着微软的步伐走

有空看看楼主说的MonoRail
 回复 引用   

<2007年9月>
2627282930311
2345678
9101112131415
16171819202122
23242526272829
30123456

导航

统计

公告

不玩了不玩了不玩了不玩了不玩了不玩了不玩了不玩了
昵称:Yok
园龄:7年4个月
粉丝:4
关注:0

搜索

 
 

常用链接

我的标签

随笔分类

随笔档案

相册

Friend Links

积分与排名

最新评论

阅读排行榜

评论排行榜

推荐排行榜