kstack-layerd-architecture
Installation
SKILL.md
kstack-layerd-architecture
use case が client / repository を呼ぶ一方向の構成。処理はまず下表のどれかに置き、どこにも属さないものだけを service にする。
| 層 | 置き場所 | 責務 |
|---|---|---|
| client | src/client |
外部サービスへのリクエスト |
| repository | src/repository |
DB への永続化 |
| use case | src/steps など |
client / repository の呼び出しと結果の合成 |
| service | src/service |
上の 3 層に属さない処理。作る前に user の承認を取る |
| utils / libs | src/utils / src/libs |
複数ファイルで使う stateless な関数 / ライブラリ設定・定数 |
層のファイルは class で書き、モジュール直下に関数を置かない
client / repository / use case のファイルには class だけを書く。その class でしか使わない処理は private method にし、複数ファイルで使う stateless な処理は utils / libs に移す。use case は private method を持たないので、後述の通り client / repository へ寄せる。