18. ドメインモデルをピュアにすべきな理由
● ドメインモデルは何にも依存させるべきではない(ピュアにすべき)
● さらに、ビジネスルールは技術的関心事に左右されるべきではない
● ビジネスルールとはドメインモデルの構成要素
○ "Business rules describe the operations, definitions and constraints that apply to an organization. Business rules can apply to people,
processes, corporate behavior and computing systems in an organization, and are put in place to help the organization achieve its goals."
○ つまり、ビジネス活動の中で意思決定を行うための規則
○ 個人的には、コンピュータが消滅しても失われないルールのことだと思ってる
○ 僕らが一番守りたいのはビジネスルール
18
※広告の例だと
分かりづらかっ
たので
お店を例にしま
した
ECサイト ~インターネット時代~商品を買う例
お店 ~近代~ お店 ~昔~
● 合計の求め方
● 小計の求め方
● 消費税の求め方
などは「会計システム」「POSシステ
ム」「そろばん」(技術的関心事)に左
右されるべきじゃない!
引用: https://en.wikipedia.org/wiki/Business_rule
30. 統一したコードフォーマット
● チーム開発ならコードフォーマットの統一は絶対した方がいい
● みんながバラバラのフォーマッタを使っていると、無駄なコード修正が入って本質を見落とす可能性
● ScalaならScalafmtが良さげ
○ 他にもscalariformとかIntellijの設定を共有する方法もある
○ まぁお好みでって感じだが、体感Scalafmtが一番使われてそう
30
object ScalafmtTest extends {
val aaa = "MicroAd"
def bbb(): Int = {
val a = 1
val b = 2
a + b
}
}
Scalafmt前
object ScalafmtTest extends {
val aaa = "MicroAd"
def bbb(): Int = {
val a = 1
val b = 2
a + b
}
}
Scalafmt 後