2020-03

NDDD

ドメイン駆動開発_フォルダー構成編_#59_さいごに

以上でC#でドメイン駆動開発パート2を終了とさせていただきます。 アプリケーションを作るうえで,ある特定のルールを決めておかないと,他人の作ったコードを読むのにひどく時間がかかります。すべてパターン化するのがいいです。こういうクラスはこのフ...
NDDD

ドメイン駆動開発_フォルダー構成編_#58_特徴を見極める

最後に全体を振り返り,どのようにクラス分けをするかの指標を解説します。 値 値を扱う場合は,アプリケーションに1つでいいのか,処理するたびに生成するべきかを考えましょう。SQLServerの接続先やログインユーザー情報はアプリケーションで1...
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プログ...