📝Clojure Design Architecture

📝Clojure Design Architecture

Clojureのアプリケーション設計.


Clojure Architecture #

Clojureを書ける人は昔Javaの人のことが多いので, このへんの設計の話題も詳しい人が多い.

Clojure Clean Architecture実践 #

tags: 📝Clean Architecture

各レイヤごとのClojureの視点からの特徴.

  • domain
    • Clojureは値はすべて定数ということを活かせる.
    • Clojure Mapは素で強力な力があるのでこれを活用する.
  • usecase
  • infrastructure
    • 自律しているサービス, loop構造をもつもの.
    • その本質は状態であり, このLayer飲み状態管理ライブラリで管理する.
  • interface
    • clojure.spec による外部との境界チェック.
    • Clojureは動的言語だがSpecを使うことで必要なところのみ型の恩恵を組み込む.
      • 外部と内部の境界をレイヤで明確に分離すれこそSpecの導入の価値あり.

Clojure Design #

分類ためのラベルの定義にはnamespace + defをつかう #

ref. 🤔スコープを制限する目的ならばRecordではなくMapをつかう

References #


Tags