我意识到这个问题是asked before,但是已经过去了一个月,没有得到令人满意的答复……我正在研究Aptana's Jaxer,我发现这个概念非常令人兴奋。

这是对不熟悉它的人的快速概述:

用他们的话说,Jaxer是“世界上第一个真正的AJAX服务器”。它基于Mozilla引擎,因此脚本是用javascript编写的,您可以完全访问服务器端的DOM。

脚本使用<script>标记放置在页面上,并且您可以指定runat属性(ala ASP.NET)来标记脚本以在客户端,服务器(两者)上执行,或作为“服务器代理”来执行,从而使功能可在客户端,但它们通过AJAX在服务器上执行。这也意味着您可以在服务器以及客户端上使用自己喜欢的客户端库(jQuery,Prototype)。

它还可以用于处理以另一种语言(例如php,ruby)生成的文档,我认为这是不切实际的,除了有助于将现有应用程序转换为使用Jaxer之外。

  • 优缺点是什么?
  • API的成熟度/稳定性如何?

  • 其他服务器端html
    预处理器?
  • 是否有人将Jaxer与另一个
    技术(php,珍珠, ruby 等)
    您的经历是什么?

  • 编辑:我已经发布了另一个有关我在玩Jaxer时发现的缺点的问题:Defining objects when using Jaxer

    最佳答案

    我已经很长时间没有使用Jaxer了,但是我发现了一些东西:

    优点

  • 用相同的代码编写前端和后端。特别适合编写验证逻辑。
  • “无缝” AJAX通信返回到服务器-就像调用JS函数一样。
  • 使用jQuery之类的JavaScript框架来操作DOM的能力。
  • 使用Canvas API生成或处理图像的能力。
  • 您将使用令人讨厌的JavaScript 1.8新功能(例如Array Extras和Getters/Setters)编写服务器JavaScript。

  • 缺点
  • 我发现他们的API不稳定(当我尝试时它们正在过渡到1.0,这样就可以理解),并且文档令人困惑,丢失或与更改的功能不匹配。我还发现调试我的Jaxer服务器端代码非常困难,并且当我遇到麻烦时,错误消息不是很有帮助。
  • 您无法在演示文稿和逻辑之间获得真正的MVC甚至MVP(ASP.NET风格)分离。
  • 我个人无法使E4X(JavaScript中的xml)正常工作,这本来应该很吸引人。
  • 没有很多框架可以构建整个应用程序。您从一些非常基本的构建块开始。
  • 您的 View 中并没有真正提供任何帮助,因此请忘记您可能在其他地方使用的所有模板化或可重用组件。并不是说您不能复制它,但是比开箱即用要困难得多。

  • 总的来说,我认为Jaxer作为另一个Web Framewok的后处理器最有前途。使用Jaxer将所有精美的AJAX内容分层放置在现有站点的顶部将是很棒的。在服务器和客户端之间共享具有验证/页面操作逻辑的动态站点将变得容易得多。我认为我不想只使用Jaxer编写应用程序。而且,它还很年轻(而且还很不成熟)-我很想知道它的结局。

    关于javascript - Jaxer的优缺点,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/98915/

    10-09 15:11