2018-01-01から1ヶ月間の記事一覧
導入手順は公式に書いてある通り。gradleでしたら警告してくれます。 ./gradlew ktlint :ktlint /Users/****/Develop/git/ddd-sample-kotlin/src/main/kotlin/work/doilux/dddsamplekotlin/ftth/order/OrderService.kt:3:24: Unnecessary block ("{}") /User…
次の案件でKotlinを使おうと思って勉強を始めました。 資料 JavaプログラマのためのKotlin入門 Kotlin文法 - クラス、継承、プロパティ とりあえず申込、契約管理の業務を想定したDDDのサンプルを作りながら勉強中(コードはいつか公開します) 今日のハイラ…
技術系のトレーニングを圧縮する方法をまとめてみました。例えば「受講したセミナーのダイジェスト版を社内でやれ」って言われた時なんかに参考になればと思います。 章を削る 「うちではこれ使わないなー」というところを削っちゃいます。注意しなきゃなの…
注意点 メッセージングのミドルウェア(RabbitMQ、Kafkaなど)が利用できるならこのパターンは使わないほうがいいです。 スーパーバイザーとは ETPとかAkkaとかで出てくる、Actorを監視するプロセス。Actorが失敗したら再起動など、事前に定義したストラテジ…
PlantUML便利なんですが、デフォルトのデザインがダサいと思っていて、自分好みにカスタマイズしてみました。 @startuml !include inc/color.inc <- 外部の設定ファイルをインポート skinparam monochrome true <- モノトーンにする skinparam shadowing fal…
例えばorder(申込)エンティティが以下の状態遷移をするとします。 ※取消(cancel)、完了(complete)のどちらかを持ってライフサイクルが終わります この時、状態遷移のイベントを残す以下のようなテーブル設計にすると、取消、完了の両方のイベントを記…
「こうしたらうまくいった」あるいは「こうしたら失敗した」など、いろんなノウハウがたまるので書き留めておくことにしました。 すでに誰かが同じことを考えて後悔しているかもしれないけど気にしない 「今どき、そんなの使わねーよ」というのもあるかもだ…
状態をクラスで表現するときに、ポリモフィズムを使うよりもEitherを使った方がスマートに表現できると思います。 ポリモフィズムを使ったパターン 「申込がない」状態をいわゆるNullオブジェクトで表現 参考:サービスクラス class OrderService { void ord…