【问题标题】:Are there other web application frameworks similar to Ocsigen? [closed]是否还有其他类似于 Ocsigen 的 Web 应用程序框架? [关闭]
【发布时间】:2012-11-29 16:52:44
【问题描述】:

我最近开始研究使用 Web 应用程序框架的想法,该框架提供了一种更统一的方式来处理客户端和服务器端编程,并且我发现了一个名为 Ocsigen 的项目。 Ocsigen 似乎与我正在寻找的内容非常相似,但我发现它有一些令人困惑的地方,例如它使用函数式编程语言而不是命令式编程语言。只是出于好奇,还有其他类似于 ocsigen 的框架吗? (也许使用一种更传统的命令式编程语言。)

【问题讨论】:

  • OCaml 实际上支持很多命令式编程。
  • 仅供参考,随着 Node.js 的兴起,现在有大量这样的框架,目前最流行的是 Meteor。甚至还有一个术语:“同构 JavaScript”。此外,这个问题是题外话,因为它要求的是场外资源。

标签: web-applications web-frameworks ocsigen


【解决方案1】:

...一个 Web 应用程序框架,提供了一种更统一的方式来处理客户端和服务器端编程

在极端情况下,您正在寻找的是“无层 Web 框架”或“多层 Web 框架”或“同构 Web 框架”(即完全模糊服务器端代码和客户端代码之间界限的框架)。

处理服务器端和客户端的完全无层网络框架(即,您永远不必为整个网络应用编写一行 JavaScript):

如果您更喜欢 JavaScript,请参阅:Tierless web framework with Javascript?

此外,您可能对这些感兴趣(其中大部分是研究项目,很少被采用):

替代抽象

您可能已经注意到,像 Ocsigen 这样的无层框架并不流行,也没有得到很好的支持。根据您的用例,您可能希望研究支持更好的抽象:

基于组件的网络框架

基于组件的框架通常与传统的基于动作(请求)的框架形成对比。使用这些基于组件的框架,页面是由独立的组件(例如日期选择器组件、视频播放器组件、登录表单组件等)构建的,并且这些组件可以封装 Javascript。这样,在实际使用组件时,您不必考虑 Javascript。

在基于组件的框架中,客户端和服务器之间的界限不一定是模糊的,但我在这里提到它们是因为如果您希望抽象出 Javascript,它们可能是一个不错的选择。

基于组件的 Java 框架已经存在了近 20 年,并且得到了相当多的采用。其中有:

客户端框架

下面列出的是仅用于客户端的非 JavaScript 框架/工具。这些为仅使用一种语言编写整个 Web 应用程序打开了大门(尽管服务器端和客户端之间的集成不如使用完全无层框架时那么好):

  • GWT (Java) - Google 使用它。
  • Miso(哈斯克尔)
  • ReasonML(带有 Reason 语法的 OCaml)
  • 加上任何将非 JavaScript 语言编译成 JavaScript 的东西。

【讨论】:

    【解决方案2】:

    你应该看看opa,它也是一种函数式语言,但它使用更传统的语法。

    【讨论】:

    • 是的,这正是我想要的。而且语言基本上是 JavaScript,我肯定比 OCaml 更熟悉。
    猜你喜欢
    • 1970-01-01
    • 2012-04-27
    • 2011-10-30
    • 2016-04-05
    • 1970-01-01
    • 2010-10-10
    • 1970-01-01
    • 2016-01-22
    • 1970-01-01
    相关资源
    最近更新 更多