gpt4 book ai didi

web-applications - 带有 Clojure 的“丰富”网络应用程序

转载 作者:行者123 更新时间:2023-12-04 02:23:15 26 4
gpt4 key购买 nike

我在构建 Clojure 时遇到了一些困难基于 Web 应用程序。这是一个简单的 CRUD 应用程序,我开始探索 Clojure 网络生态系统。我正在尝试不同的库,例如 Hiccup , Enlive , CompojureNoir (尽管 Noir 似乎处于弃用的边缘)。

我的问题实际上是两个问题。首先是明显缺乏构建 clojure Web 应用程序的约定。其次,我需要一些有关创建“丰富” html 组件的提示。

我喜欢 Clojure 方式的一点是让不同的库可以轻松协同工作。用 hiccup 代替 enlive,反过来也没什么大不了的。一切都发挥其单一而简单的作用。与像 JSF 这样的复杂框架有很大不同。

但有一点:这种巨大的自由让我感到有些失落。在 JSF 中,我知道一切都有它的位置。我使用 Spring 来集成所有组件,使用 Spring-Security 来处理所有 session 内容。组件库让我从处理 html、javascript 和 ajax 问题的压力中解脱出来。

尤其是前面提到的组件库是我在 Clojure 中所缺少的。我发现自己实现了诸如具有交替行颜色、分页、列排序、增量过滤器等功能的数据表之类的东西。它给我留下了关于如何同步这些组件的浏览器和服务器状态的问题,尤其是在包含 ajax 时。我无法在网上找到任何成熟的答案。

框架的优势:一旦您了解了规则和限制,您就可以构建您的应用程序并专注于业务规则。技术基础设施得到处理,不应分散注意力。

对 Clojure 世界有什么建议?是 ClojureScript One一个办法?我还没有研究它。有谁知道任何提供类似功能的组件库,例如 RichFaces 数据表?是否有处理 ajax 的首选方法?

最佳答案

我只能给你一些指导方针:

  • 以 JSON 或 EDF 格式在客户端和服务器之间交换消息
  • 将您的 GUI 代码与客户端上的状态管理代码分开
  • 将您的状态管理代码交叉放置,以便您可以在浏览器之外对其进行测试
  • 安排您的客户端 GUI 代码尽可能独立于特定库,选择具有活跃社区和最少依赖关系的库
  • 关于web-applications - 带有 Clojure 的“丰富”网络应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13903138/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com