我正在Clojure中开发一个具有多个子结构的复杂数据结构.
我知道我会想要随着时间推移扩展这个结构,有时可能想要改变内部结构而不会破坏数据结构的不同用户(例如我可能想要将一个向量更改为一个hashmap,添加某种索引出于性能原因的结构,或者包含Java类型)
我目前的想法是:
我认为这会有效,但我担心它开始看起来像很多"胶水"代码.它也可能反映了我对面向对象方法的更多熟悉.
在Clojure中推荐的方法是什么?
encapsulation abstraction clojure data-structures
abstraction ×1
clojure ×1
data-structures ×1
encapsulation ×1