具有函数调用的Clojure多方法?

具有函数调用的Clojure多方法?,clojure,clojurescript,Clojure,Clojurescript,使用功能简单的多种方法是一种不好的做法吗?具体来说,每个方法调用一个函数来执行逻辑 (defn append "docstring" [[book page]] (.append book page)) (defmulti book! (fn [a b] a)) (defmethod book! :append [_ b] (append b)) 我之所以想这样做,是为了能够在每个函数上生成docstring,并通过多方法使用这些函数。让定义为只调用另一个函数的多方法没有什么不好的做法。您

使用功能简单的多种方法是一种不好的做法吗?具体来说,每个方法调用一个函数来执行逻辑

(defn append 
"docstring"
[[book page]] 
(.append book page))
(defmulti book!
(fn [a b] a))
(defmethod book! :append
[_ b]
(append b))

我之所以想这样做,是为了能够在每个函数上生成docstring,并通过多方法使用这些函数。

让定义为只调用另一个函数的多方法没有什么不好的做法。您可以在任何粒度级别创建尽可能多的函数,以提供最可读的代码。

我正在进行一些java互操作,第一个想法是为每个java的类方法使用多方法,但多方法不会为文档生成docstring,因为它实际上是一个函数。因此,如果我创建了单独的简单函数,这些函数将具有互操作性,并且每个multimethod都将调用相应的函数,这是一种不好的做法吗?很抱歉,希望编辑能让它更清楚。同样很抱歉拼错了“defmethods”,我现在来自pho e。
defmrthod
?我也认为你的父母在读书!你错了吗?我认为实际上添加另一层而不仅仅是使用功能是一种不好的做法。这取决于你在这里喜欢做什么,没有规则