NDDD

NDDD

ドメイン駆動開発_フォルダー構成編_#39_AreaIdクラスをEntityに乗せる

前回までで,AreaIdクラスを完成させました。今回はそのAreaIdクラスをEntityに乗せます。そうすることで,EntityのプロパティがValueObjectになり,使う側は,すべての処理を選択できるようになります。 Entityの...
NDDD

ドメイン駆動開発_フォルダー構成編_#38_AreaIdにビジネスロジックを入れる

今AreaIdクラスにはコンストラクタとValue,そしてEqualsCoreがありますが,これだけだと,Valueしか表現できていないので,あまり意味のあるValueObjectではありません。ここにビジネスロジックを入れていきましょう。...
NDDD

ドメイン駆動開発_フォルダー構成編_#37_抽象クラスValueObjectを使用してイコールの問題の解消

参照型の為,イコールで比較するとAreaIdの3と他のインスタンスのAreaIdの3は,異なるものと判断されます。 値として扱うなら,同じものと判定したいので,イコールメソッドのオーバーライドをします。これは次のValueObject抽象ク...
NDDD

ドメイン駆動開発_フォルダー構成編_#36_ValueObjectを作成する

それでは実際にValueObjectを作成してみましょう。データベースの列項目はすべてValueObjectになりえます。 ValueObjectsフォルダーの作成 ドメインプロジェクトを右クリックして「追加」「新しいフォルダー」を選択し,...
NDDD

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

ここからはDomain層を詳しく見ていきましょう。現状フォルダーは,EntitiesとRepositoriesがあるだけです。ValueObjectsというものを作っていきましょう。 ValueObjectとは? ValueObjectとは...
NDDD

ドメイン駆動開発_フォルダー構成編_#34_BaseFormでログインユーザーを表示する

前回は,Sharedクラスで,ログインIDを記憶するようにしました。今回は,すべての画面でログインユーザーが表示されるようにしてみましょう。 BaseFormのステータスバーにUserIdLabelを追加する LoginViewのStatu...
NDDD

ドメイン駆動開発_フォルダー構成編_#33_SharedにログインIDを記憶する

前回はベースフォームを作成して,ステータスバーを共通化するという部分を作りました。今回は,LoginViewでログインしたときに,Sharedにログイン情報を覚えさせる方法を解説していきます。 SharedにログインIDを追加する Shar...
NDDD

ドメイン駆動開発_フォルダー構成編_#32_ベースフォームを作る

それではベースフォームを作成していきます。 ベースフォームの作成 Windowsフォームプロジェクトを右クリックして,「追加」「Windowsフォーム」の順に選択し,画面を作成します。 名前をBaseFormにして,「追加」ボタンを押下しま...
NDDD

ドメイン駆動開発_フォルダー構成編_#31_Shareクラスの活用方法

今回はShareクラスの活用方法ということで,解説していきたいと思います。 Sharedクラスには,設定ファイルの値以外にも,アプリケーション全体で覚えておきたいことを記載して使うことができます。基本的にはアプリケーションが起動して,すぐに...
NDDD

ドメイン駆動開発_フォルダー構成編_#30_Fakeデータのバリエーション

これまでのようにCSVファイルを使えば,いろいろな値を取り込むことができます。正常系や異常系など,テスト項目に合わせて,ファイルを用意しておいて,毎回NDDDFakeの中身を変更するといいかと思います。 設定ファイルにフォルダー番号の設定を...