3
来自OOP背景,我对Clojure中推荐的API设计方法有所怀疑。例如,在一个面向对象的语言(Python的在这里),使用一些API,我会做这样的:Clojure/LISP REST客户端设计
api = someWebService()
api.setWriteApiKey(WRITE_API_KEY)
api.sampleloadSong('file.mp3')
在上面的例子中,我设置的API键一次,一次又一次地调用相关的方法,而没有经过API密钥。在Clojure或任何其他LISP语言家族中推荐这样做的方式是什么?
我需要通过在每个键和每个函数调用这样的:
(sampleloadSong "WRITE_API_KEY" "file.mp3")
或有任何其他更好的办法。
生成一个不可变的API对象,您将一次又一次地使用:'(make-api“键”...“)(样本加载 - 歌曲api歌曲)''。即使在命令式语言中,它实际上也是一个相当合理的设计。 –
@ om-nom-nom你可以用一个简短的例子来解释它吗? – Sibi