我很难理解clojure的Noir库的意义。它似乎是一个在compojure之上编写的框架,将defroute重命名为defpage,并将其叫停。显然,这是一种不公平的简化,但Noir到底带来了什么呢?为什么我要使用Noir而不是普通的compojure+hiccup?
编辑/更新:不推荐使用Noir,有趣的写在这里:http://blog.raynes.me/blog/2012/12/13/moving-away-from-noir/。
发布于 2012-03-31 05:17:34
Compojure是一个生成Ring请求/响应处理程序的小框架,其中处理程序是根据您定义的路由选择的。
Noir增加了会话处理、cookie、模板和部分的功能,更容易生成响应、表单验证、路由过滤器、加密密码、JSON (反)序列化和自定义状态页面。换句话说,Noir在一个包中结合了Compojure、Hiccup和一堆其他聪明的东西。
发布于 2012-03-31 05:16:27
从author of Noir himself
Noir并不是compojure和compojure的真正替代品,更多的是它们的抽象。它的诞生源于我在构建http://www.typewire.io时看到了一个真正的web应用程序是如何演变的,以及环/复合/打呃堆栈中缺少了什么。此外,正如我在另一条评论中提到的,我希望它能作为一个单独的“包”,从Clojure的web开发开始,而不是试图从现在已经存在的碎片中拼凑起来。通过控制所有这些,我可以创建一个更有凝聚力和更好定义的故事来帮助人们开始。我还可以分享我在Clojure中学习到的维护网站的经验,希望能鼓励一些模式来避免我陷入的一些陷阱。
(强调我的)
发布于 2012-12-14 18:43:56
https://stackoverflow.com/questions/9950056
复制相似问题