AJAX:HTML++同Client/SOA
【导读】考虑这个需要清楚的声明,随着Bill Edney的技术上的评论(Tibet),并且我认为它反映了人们对于AJAX所具有的经验。从最近的来看,将会有两种类型的AJAX应用程序,一个我称之为“HTML++”,而另一个是Bill提到的Client/SOA。下面概要的谈谈它们。
HTML++
AJAX是用来加强现有的HTML窗体/用户之间的交互,但是现在基本的范例仍然是和“普通”的web应用程序一样。一些关于这种类型的重要想法:
- 页重载仍然很频繁的发生。
- 很可能的是(如果你努力争取)可以缓和的将其退化为不支持将JS关闭了的浏览器。
- 会话状态将会保留在服务器端。
实际上这就是现在大家普遍采取的方法,并取得了不同程度上的成功。因为很多原因,我认为“朝向HTML++ ”的努力和开销将会远远超出获得的利益。实际的仍为这最好由服务器端的工具,如真正为你考虑的HTML_AJAX(边注:当给出这种说法的时候,提到的JPSpan有效的废弃了——HTML_AJAX,从某种程度上来说,是它的继任者,这就有点像PEAR::SOAP 和NuSOAP)。
于此同时,一个有趣的“in between”的例子,就是script.aculo.us购物车,我认为它标志了这个分水岭。。每一次你放一个东西到购物车里面,购物车就会告诉服务器关于这个操作,然后取出一个新的购物车内容的列表并更新客户端。换一句话说就是是服务器决定了你的购物车里面到底有些什么。这很有趣因为你也许会争论说购物车可以完全就只保持在客户端,只有在最后当你决定要去结账的时候才把所有的东西都发送到服务器端。但是在实际中,很可能的是一个购物车将会被用于一个站点上没,而它在这个站点可能被期望会在多个不同的页面(或者跳格)中工作,但是只用一个单独的服务器端的会话状态。
Client / SOA
Bill称之为Client / SOA,它将会使用相同的东西。SOA也许还没有成为逐渐交流想法的概念。我开始理解这些是开始是问关于AJAX:什么是session?另外的一个来自Ajax通过窗体装配的Cédric Savarese的问题是:它并不是关于XMLHTTPRequest(和第二部分)的,一个培训的想法,这个想法引导着他完成了他已经在freja框架中完成的那些。
一些关于Client / SOA的重要想法:
页面重载是很少见的。应用程序倾向于在一个单独的浏览器窗口里面运行。这就不可能缓和的退化,并且不通过维护费开的代码基础。会话的状态大部分的是被客户端管理的。
javascript和浏览器作为一种运行时而起作用,这就和Java或者.NET的运行时是类似的。它要求特别的开发者。
也学在这里使用AJAX这个词本省就是错误的。为了可以使用这种应用程序,你需要许多的javascript来粘合这些应用程序,并且我们所称之谓AJAX的东西也学很可能深深的埋藏着以至于它很少能够为当你作为一个应用程序开发者调用API的时候反映出来。
据我所知,Tibet是目前唯一的有能力可能使之其发生的一个开源项目,现在,还没有可以获得的代码——你需要等到下一个版本的发布(不会很久)。同时,通过Google,你将会找到从2001年4月份开始的人们对Tibet的讨论。
什么样的应用程序将会以这种方式被构建仍然会被看见的。很容易的,这些程序将会和今天的桌面程序一样,但是想想这儿的胜利者将不会是那些用简单的已经能够运行的重复发明来解决的人。例如,现在已有的竞争是在构建基于办公套件的web,但是我认为这很可能只是一个愚蠢的游戏。特别是从MS Word的角度来考虑,如果你们已经看到了公司将会怎样来使用Word模版,为什么MS还要开发InfoPath,你会明白最为“应用程序单元”的文字处理器不在是令人感兴趣的东西。一些更像“在线文档”的东西,同一个具体的类别的信息相关联的文档,有一个小组正在试图组织,并把东西结合起来,比如合作,版本和工作流,他们觉得这样会更加有趣的。
同样的这种应用程序将会被其他技术所取代,例如Microsoft正在涌进Vista或者其他的基于XUL(也许只是Firefox的扩展)的技术。多考虑一下接下来的这12个月里面将会发生什么。
不管怎样——那只是我的想法,正危险的登陆市场了,但是却是为了试图明确AJAX中肯指出。
相关新闻>>
- 发表评论
-
- 最新评论 更多>>