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