2006年07月
1. Web显示层技术评估
Web显示层技术评估 -- 1. 名词界定 2. 理论模型, 3. 数据寻址
Web显示层技术评估 -- 4.评估指标
Web显示层技术评估 -- 5.Scripted Template, 6, Template Manipulation, 7, Model Match, 8. 特性总表
Web显示层技术评估 -- 9.Browser Side, 10, Unobtrusive, 显示逻辑AOP, 多语言支持的终极解决方案, 总结与展望
2. about design pattern
Iterator vs Visitor, Pull vs Push阅读全文>
发表于 @ 2006年07月15日 12:00:00|评论(loading...)|编辑
Browser Side, Unobtrusive, 显示逻辑AOP, 多语言支持的终极解决方案, 总结与展望
阅读全文>
发表于 @ 2006年07月14日 14:47:00|评论(loading...)|编辑
5.Scripted Template, 6, Template Manipulation, 7, Model Match, 8. 特性总表阅读全文>
发表于 @ 2006年07月14日 14:43:00|评论(loading...)|编辑
评估指标
下面列出一系列比较详细的、能够落到实处的、能够客观量化的、可操作的评估硬指标。
排名不分先后。大家可以参考各自关心的选项。
虽然下面主要针对的都是Java Web 显示技术,但这些指标同样适用于其他语言的Web显示技术。
评分采取10分作为满分。
(1) Host Language Consistency宿主语言一致性
Server Side Template Script和Server Host Language是同一种语言。这应该是专门针对JSP的优势来说了。JSP能够获得10分。
另外,XSL也是。XSL本是也是XML格式。也能够获得10分。
其他的Template Script,如taglib,tapestry只能获得0分。
freemarker, velocity由于具有一定的动态解释的方便特性,可以获得2分。
至于在Java Code里面操作Template或者提供匹配数据的那些技术,由于Template中不存在Script Logic,能够获得5分。
大家可能不太注意这个特性。但是这个特性还是有一些意义的。其他的如ASP.net,还有动态语阅读全文>
发表于 @ 2006年07月14日 14:40:00|评论(loading...)|编辑
Web显示层技术评估
名词界定
显示层的意思就是Presentation Layer,也翻译成表现层、展现层、展示层。
本文讨论的范围只包括采用HTML Template的显示层技术,不包括Echo,GWT(google web toolkit)等根据代码产生HTML的工具。
本文主要讨论Server Side (针对Java Language)的显示层技术,然后进一步讨论Browser Side(Ajax)的显示层技术(一个典型的Ajax应用也分为Model, View, Controller – Data, HTML/CSS, JavaScript)。注意,本文关于Ajax的讨论只有很少一部分,因为我不擅长这个领域。只是一个顺便的扩展比较。
一个很有趣的现象。Server Side和Browser Side的显示层技术格局恰好相反。Server Side的Scripted Template技术比较多,比较流行;而Browser Side的HTML DOM Manipulation技术、HTML View Model技术比较多,比较流行。
本文会提到一些技术、或者框架的名阅读全文>
发表于 @ 2006年07月14日 14:37:00|评论(loading...)|编辑
Iterator vs Visitor, Pull vs Push
名词界定
Iterator Pattern也叫做Generator, Sequence, Stream等。Java里面有Iterator Interface,大家应该比较熟悉,不再赘述。
完整的具有Visitor和Visited (Visitable) 两个部分的Visitor Pattern的使用并不广泛。
简单的只有Visitor部分的Simple Visitor Pattern比较常见,比如Callback, Interceptor, Filter,Functor, Selector, Extractor等,都可以看作是Simple Visitor Pattern。
它们都只有Visitor部分,而没有Visited部分。或者说他们的Visitor需要处理的Visited Object通常只有一种通用数据类型,所以不需要专门提出来一个Visited Interface -- accept(visitor)。
这种情况和Observer Pattern很相似。不过这也不奇怪,很多Design P阅读全文>
发表于 @ 2006年07月14日 08:35:00|评论(loading...)|编辑
Fastm, DOMPlus 不需要用户提供特殊类型的View Model, 只需要提供POJO就可以。
POJO可以是任何Object. bean, map, DOM。
所以,对于DOMPlus来说。
DOM + DOM => DOM or SAX
XML + XML => XML
恰好是XSL的功能。XSL也是XML(XSL) + XML => XML
所不同的是,DOMPlus的XML Template是Pure HTML,所见即所得。HTML Template干净程度直追XMLC,等同或者超过Wicket(更别说Tapestry)。
用法:
Fastm Template只有2个自定义标记。BEGIN-END 和 {}。标记动态块和变量。
DOMPlus也是如此。针对DOM Node类型,只有3个自定义Attribute。
nodeTarge标记动态Element;attributesTarget标记动态attriburtes;textTarget标记动态text。
阅读全文>
发表于 @ 2006年07月05日 14:54:00|评论(loading...)|编辑
Fastm Template是一个树形结构。Dynamic下面包含Static Text, Variable, Dynamic三种节点。
Fastm Template里面除了静态文本,动态部分只有两类,Dynamic Block 和 Variable。
Fastm 的 Template DOM + Data的匹配过程,很类似于XSL的Pattern Match的递归组合。
阅读全文>
发表于 @ 2006年07月03日 08:15:00|评论(loading...)|编辑