【问题标题】:When use Pedestal, Hoplon, Bidi and Route-one?何时使用 Pedestal、Hoplon、Bidi 和 Route-one?
【发布时间】:2015-05-31 13:00:18
【问题描述】:

正在尝试找出我应该使用哪一个(Pedestal、Hoplon、Bidi)?我在 Internet 上没有找到任何可以帮助我做出这个选择的好文章。

https://github.com/juxt/bidi 我可以读到 Pedestal 是同构的,但 Bidi 也是 cljs。这是什么意思?有什么区别?

发现 compojure 太简单了。我什至不能在 HTML 模板中生成 URL。我开始寻找别的东西。我还发现了 route-one(生成与 compojure 一起使用的 URL 的库),但我想我很快就会发现我需要的东西比 compojure 还要多。

我的直觉告诉我要选择:Pedestal、Hoplon 和 Bidi。

W我需要什么: 我想要独立的商业模式架构,比如

http://blog.8thlight.com/uncle-bob/2012/08/13/the-clean-architecture.html

http://blog.find-method.de/index.php?/archives/209-Dependency-inversion-in-Clojure.html

我不想将这部分代码依赖于任何框架。依赖越少越好。

On 下一阶段我想将这个模型业务注入到类似桥接器的东西中,这将是与用户界面的连接器。是时候使用框架或其他库了。

至少我想创建前端用户界面作为网站。它将是 ClojureScript 的动态内容或可能是静态的。我不知道。我必须同时处理这两个问题。

W我在 Clojure 中发现,我真的很喜欢根据自己的喜好构建自己的库集的概念。但我不想编写自己的代码来使用诸如为路由生成 URL 之类的东西。所以也许我也应该考虑一号路线?

P请写一些聪明的东西来帮助我选择一个或用其他选项来使我的生活复杂化:)

https://github.com/juxt/bidi

https://github.com/pedestal/pedestal

https://github.com/tailrecursion/hoplon

https://github.com/clojurewerkz/route-one

【问题讨论】:

  • 嗨,Kabra,这个问题可能有点太宽泛了。你能缩小你的要求,更清楚你自己的要求吗?
  • 这可能很难,因为我不知道我不知道什么:) 我昨天学到的:bidi 和 route-one 是路由库。 Route-one 非常简单,bidi 也可以在前端使用 ClojureScript。 Pedestal 和 Hoplon 是更复杂的工具。 Pedestal 更关注后端,如 RESTful 应用程序。 Hoplon 更专注于前端。仍然两者都做同样的事情。对吗?

标签: clojure routing pedestal hoplon


【解决方案1】:

这是一个古老的问题,我不假装有答案(更不用说“那个”答案了)。但是我今晚在谷歌上搜索一些相同的基本作品,我的搜索结果返回了这个回复。

所以我想我会在这里记下我的[非常]有限的理解。

比迪看起来很棒。据我所见,juxt 可以生产非常高质量的软件。对于我需要 REST 风格的接口路由(包括发回相关路由)的地方,这是我目前的 GOTO 选择。

基座 - 也很棒。但这似乎是一个非常不同的用例。路由 在这里是一个非常小的子集(他们已经尝试了多种方法来提出一组非常好的选项)。这似乎更像是一个相当低级的全功能服务器端库,用于将您关心的代码与您不关心的底层服务器部分集成。

说实话,我不确定 Pedestal 的路由库是否真的支持 REST 所需的反向端点。我认为他们几乎肯定会这样做,但我并不肯定。我的用例都是关于它们的拦截器链接抽象,这真是太棒了。

Hoplon - 我已经有 2 到 3 年没有看过这个了。当时,它似乎是一个大型、大胆、高级的厨房水槽框架,与 Ruby On Rails 处于同一水平(尽管我认为也有前端组件)。我一直在编写 API 端点,当时这似乎不太合适。它值得比我给予的更多关注。

route-one - 在这个问题之前我没有听说过它。我从 clojurewerkz 中使用过的所有东西都给我留下了很好的印象,但是这种用法非常少。

【讨论】:

    猜你喜欢
    • 2019-06-14
    • 2019-08-14
    • 1970-01-01
    • 1970-01-01
    • 2014-05-04
    • 2020-07-10
    • 1970-01-01
    • 1970-01-01
    • 2012-05-05
    相关资源
    最近更新 更多