2020

NDDD

ドメイン駆動開発_フォルダー構成編_#57_トランザクションはどこでかける?

今回はトランザクションをどこでかけるべきか?というお話をします。 データベースを使っていると,トランザクションをかける必要が出てきます。例えば受注ヘッダーと受注明細テーブルを登録する場合はトランザクションをかけて,データの不整合が起きないよ...
NDDD

ドメイン駆動開発_フォルダー構成編_#56_Module

今回はModule(モジュール)フォルダーのお話をします。 モジュールには「どこにも納まらないもの」を入れます。基本的にはValueObjectやEntity,Repositoryに振り分けていくのですが,アプリケーションを作成していると,...
NDDD

ドメイン駆動開発_フォルダー構成編_#55_Helpers

今回はHelpersフォルダーのお話をします。前回はLogicsフォルダーに独立したロジックを入れていくというお話をしました。Helpersも独立したロジックですが,ビジネスロジックを含むかどうかで区別しています。 Helpersフォルダー...
NDDD

ドメイン駆動開発_フォルダー構成編_#54_Logics

今回はLogicsフォルダーに関して解説していきます。完全に独立したロジックはLogicsフォルダーに入れましょう。ValueObjectやEntityで表現しづらいものはpublicでstaticな割り切ったロジックにします。値とロジック...
NDDD

ドメイン駆動開発_フォルダー構成編_#53_StaticValues

今回はStaticValuesというお話をします。StaticValuesという名前は私が勝手に言っている言葉なので,キャッシュなどと表現していただいても構いません。要はデータベース等から値を取ってきて,メモリ上に保持しておくエリアをSta...
NDDD

ドメイン駆動開発_フォルダー構成編_#52_タイマークラスの作成

それでは,前回お伝えした通り,タイマークラスを作成していきます。 タイマークラスの作成 次のようにコーディングします。 using System; using System.Collections.Generic; using System...
NDDD

ドメイン駆動開発_フォルダー構成編_#51_タイマー処理はどこに置く?

今回は,タイマークラスはどこに置くのか?というお話をします。 タイマークラスとは? タイマークラスとは,バックグラウンドで処理するクラスの事です。定期的にデータを収集して,何かのチェックをしたり,値を保持しておくような処理をする,画面とは別...
NDDD

ドメイン駆動開発_フォルダー構成編_#50_ログの出力

これまで例外や,エラー処理の話をしてきましたが,今回はログの出力についてのお話をしていきます。現状ExceptionProcではエラーメッセージを表示していますが,ログも出したほうが,調査に使えるため,出したほうがいいですね。.NETプログ...
NDDD

ドメイン駆動開発_フォルダー構成編_#49_エラー処理の共通化

前回は例外に例外区分を付けて,メッセージボックスなどで利用できるようにしました。しかしこのままでは,各画面や各イベントのcatchのすべてにこのエラー処理を入れていかないといけなくなり,コードの重複が発生するため,これを共通化する方法を見て...
NDDD

ドメイン駆動開発_フォルダー構成編_#48_メッセージの区分

これまで例外の話をしてきていますが,引き続き例外の話をします。 メッセージボックスのアイコン Searchボタンクリックイベント例外になったときに,メッセージを出していますが,メッセージだけでなく,インフォメーション,警告,エラー,などの区...