開発アプローチとエンティティライフサイクル分析のお話。
意外と最近エンティティライフサイクル分析は試験に出ているので
押さえておく必要あり。
開発アプローチ
プロセス中心設計
開発アプローチには大きく分けて2つある。
一つはプロセス中心設計で,
どのような機能が必要かという観点から
設計を始める。
しかしこのやり方では
データの管理がうまくできず
昔のやり方というイメージ。
現在のDB設計はデータ中心設計で行う。
データ中心設計
どのようなデータが必要かという観点
から設計を始める
業務を分析して必要なデータ項目を洗い出す
エンティティライフサイクル分析
すべてのデータにはライフサイクルがあり
生まれて使われて死んでいくまでを分析する方法。
生成 C
参照 R
更新 U
削除 D
の頭文字をとってCRUD図と呼ぶ。
基本的にこの4つのプロセスが
各エンティティに存在するはずという観点で
分析する。
次のような感じで縦軸に処理,横軸にエンティティを書いて分析する
顧客 | 商品 | ||
顧客登録 |
C |
||
顧客更新 |
U |
分析のポイント
原則的にCRUDの4つがそろっているかどうか
→業務の内容によっては4つそろっていなくてもよいこともある
ある箇所にCRUDが集中していないか
→集中している場合は処理を分ける必要があるかを検討する
あるプロセスと別のプロセスで同じパターンになってないか
→同じパターンがある場合はどちらか1つでよい場合がある
SQLやデータベースについてもっと学びたい方は次の記事でおすすめの書籍を紹介しています↓
#01_はじめに
#02_VisualStudio2022のインストール
#03_SQLServerのインストール
#04_データベースとテーブルの作成
#05_プロジェクトの作成
#06_接続先文字列の作成
#07_データテーブルでのデータの取得
#08_Sqlアクセスクラスの作成
#09_SqlDataReaderでのデータ取得
#10_SqlDataReaderの結果をカスタムクラスに入れる方法
#11_SqlCommandでInsert文を発行する方法
#12_SqlCommandでUpdate文を発行する方法
#13_Update対象がなかったらInsertする方法
#14_SqlCommandでDelete文を発行する方法
#15_Dapperでデータを取得する方法
#16_DapperでInsert文を発行する方法
#17_EntityFrameworkをインストールしてDbContextを作成する方法
#18_EntityFrameworkでデータを取得する方法
#19_EntityFrameworkでInsert文を発行する方法
#20_EntityFrameworkでUpdate文を発行する方法
#21_EntityFrameworkでDelete文を発行する方法
#22_Helperクラスを作ってSqlCommand操作を共通化する方法
#23_パフォーマンスチェックの方法
#24_4つのデータのとり方のパフォーマンスチェック
#25_4つの結果を踏まえて講評
#26_さいごに
下記URLは、ベネッセが提供する教育用プラットフォームにて
私が公開しているプログラミング学習コースです。
無料コースもあるので、よかったらご覧になってみてください。
【無料動画】「C#を勉強する順番」