精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2005-04-07
buaawhl强啊,多努力,下个项目评估时用你的fastm试试
![]() |
|
返回顶楼 | |
发表时间:2005-04-07
andyyehoo 写道 buaawhl强啊,多努力,下个项目评估时用你的fastm试试
![]() 多谢.:-) 我现在为 fastm 供了一个简单的WebWork 的 View Adapter -- FastmResult. 能够像velocity, freemarker那样和WebWork结合使用。 |
|
返回顶楼 | |
发表时间:2005-04-15
Velocity快?
和什么比快呀? ![]() |
|
返回顶楼 | |
发表时间:2005-04-15
andyyehoo 写道 velocity可以做类似
$request.session.removeAttribute("varName") 的操作,而freemarker不能 速度方面没有严谨的解释,不过看到了几处文章这样写的 不能吗? 什么错误? |
|
返回顶楼 | |
发表时间:2005-04-26
如果真正做过项目的话,我估计你会选Velocity,因为简单,资料多,成功案例多
Freemarker我现在也在研究,他可以替代Velocity的部分往往是不常用的部分 而且不支持Jdk的buidin |
|
返回顶楼 | |
发表时间:2005-04-26
FreeMarker在明明可以使用xml语法的时候,偏偏自定义自己的tag格式。实在是有点古怪。执行能力,抽象能力和集成能力等方面考虑。
fastm太过简单了,不支持抽象(有include吗) |
|
返回顶楼 | |
发表时间:2005-04-26
canonical 写道 fastm太过简单了,不支持抽象(有include吗) fastm不支持include。 基本格式和 php lib 一样。就是phpbb采取的这种。 但是 fastm 在这个基础上更进了一步。 支持 Template DOM + POJO DOM。 include这种需求,在XML DOM里面有两种方法。 一种是XSL操作,一种是Java Code操作,可以动态直接替换任何Node。而不是静态的include。 fastm也是如此。可以有两种方式 动态include。 1. java code 替换 Template DOM中的任何Node。 2. java code 替换 POJO 中的任何Node。 |
|
返回顶楼 | |
发表时间:2005-04-26
fastm在java代码中作替换不是什么好主意,因为include是界面开发人员完全能够控制的。我也设计了一种模板技术,使用xml语法。
http://canonical.blogdriver.com/canonical/600295.html |
|
返回顶楼 | |
发表时间:2005-04-26
canonical 写道 fastm在java代码中作替换不是什么好主意,因为include是界面开发人员完全能够控制的。我也设计了一种模板技术,使用xml语法。
http://canonical.blogdriver.com/canonical/600295.html 你的Blog 我早就拜读过了,也包括这篇。也一直在关注。:-) TPL是一个相当强大的Script语言。 类似的用 Tag 作 Script 语句的Template Script还有, Tapestry, Wicket (HTML Tag), Tag Lib (XML Tag), Python ZOPE的Template Script 等。 还看到这个产品。http://www.htok.net/we/servlet/SuperFace/help/index.html TPL看起来,要比这些的功能还要强大一些,甚至可以引入Java Object/Class, 也可以自定义Java Class。 TPL 和fastm走的路,正好相反。 TPL是除了引入Logic之外,尽量把Java的特性向HTML Template里面引入。还能够引入XSL等Transformer。 Fastm是尽量把Logic 从Template中驱逐出去。让Template 本身变得干净,接近于Pure HTML DOM 一般干净。用户可以象操作XML DOM一样操作Fastm Template DOM。 关于include,界面设计人员也可以用配置的方法指定。比如,这是一块菜单位置。就用 <!-- BEGIN DYNAMIC: include:menu.html --> <!-- END DYNAMIC: include:menu.html --> 或者{include:menu.html} 标志出来。 Menu.html是另一个HTML。程序员可以写一段简单的代码,把menu.html装配到那个位置。(如果用Groovy, Jython, Jaskell等,则无需编译) 界面设计人员不用关心如何实现。和直接写 <jsp:include="menu.jsp"/> 效果一样。 TPL, JSPlet等,是强大的 拉 技术。 而fastm则是纯粹的推技术。Template本身一点主动性都没有,完全是被动的资源。 我对Template & Script 的看法是这样。 HTML里面的Script逻辑,总是不如 Java Code里面的逻辑 容易管理。 Java Code天生就是做逻辑的,是一个语义清晰的面向对象的成熟语言。结构化,层次化。Java 里面可以import 另一个Java 类,可以调用另一个类的 函数。开发、编译、调试工具也比较成熟。 所以,我倾向于把逻辑尽量搬到Java Code里面,而不是相反。 |
|
返回顶楼 | |
发表时间:2005-06-02
buaawhl 写道 TPL, JSPlet等,是强大的 拉 技术。
而fastm则是纯粹的推技术。Template本身一点主动性都没有,完全是被动的资源。 我对Template & Script 的看法是这样。 HTML里面的Script逻辑,总是不如 Java Code里面的逻辑 容易管理。 Java Code天生就是做逻辑的,是一个语义清晰的面向对象的成熟语言。结构化,层次化。Java 里面可以import 另一个Java 类,可以调用另一个类的 函数。开发、编译、调试工具也比较成熟。 所以,我倾向于把逻辑尽量搬到Java Code里面,而不是相反。 赞同,尽量的把逻辑往类层放,页面会简单,甚至美工都可以参与写页面.对分层开发是很有利的. 而页面逻辑显然在类里更合适,编译期就能发现很多问题.当然页面没了逻辑一定会少了点展示方面的灵活性. 但显然fastm更符合模版语言和mvc的初衷:纯get数据展示; 没有了页面逻辑,虽然会丧失一点灵活性,但从规范和开发维护角度,还是值得采用的. 至于include子页面,我看也是打乱页面可视化开发一个因素,页面开发工具强大如Dreamweaver也不能展示子页面的;而且include也导致了页面间的偶合,我感觉模版语言应尽量向纯html靠拢,没必要在界面的制作上耍技巧. |
|
返回顶楼 | |