gpt4 book ai didi

haskell - Snaplets 是否适合较大的应用程序,或者您可以直接在 snap-core 之上构建吗?

转载 作者:行者123 更新时间:2023-12-02 10:43:19 24 4
gpt4 key购买 nike

我计划使用 Snap 编写网络应用程序。

但是对我来说,坚持使用 snap-core 比使用 snaplets 和镜头要简单得多。

从长远来看,使用snap init barebones开始开发,然后手动添加抢劫模板、HDBC数据库持久性等,而不诉诸Lens的东西,是否可以维护? Snap 核心团队在实践中鼓励除 snap-core 之外还使用 Snaplets 的力度有多大?

最佳答案

正如 ocharles 所说,您当然可以在 snap-core 中构建大型 Web 应用程序,而无需使用 snaplet。然而,snaplet 是直接根据我们在实际应用程序中的经验开发的。我们发现我们最终总是编写大量相同的样板。对于几乎任何足够复杂的应用程序,我们发现您通常至少需要一个读取器和/或状态单子(monad)。事实上,即使您只使用 snap-core + heist,您也很有可能开始想要这样做,因为您必须在使用它的任何地方传递 HeistState。

所以我想说,snap 和 snap-core 之间的选择大致相当于 C 语言和汇编语言之间的选择。有人可能会说 C 语言有“for”和“while”等复杂的概念,但汇编语言则简单得多,只有 jmp 的简单概念。但最终我们都知道 C 语言似乎值得付出认知开销,因为“for”和“while”体现了我们一直使用的模式。

但是,我想说的是,您很有可能无需编写自己的 snaplet 即可构建大型 Web 应用程序。现在有许多有用的 snaplet 可以处理许多常见任务,您可以使用其中任何一个,而无需实际编写自己的独立 snaplet。编写自己的 snaplet 的唯一真正好处是,如果您将在多个 Web 应用程序中使用它,或者您想发布它以便其他人受益。

关于haskell - Snaplets 是否适合较大的应用程序,或者您可以直接在 snap-core 之上构建吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13661595/

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