Model ( MVCモデル )
「Model」という概念についてのメモ。
一言まとめ
モデルとは
$「データを処理したり、データをDBへ保存したりする部分」$
【説明】
Modelの仕事は主に以下のような「データベースの処理を司る部分」のことです。
- ビジネスロジックを書く部分
- データを処理したり、データをDBへ保存する
- DBからデータを取得してControllerへ送る
- データベースとデータのやり取りを行う機能を実装
- データベースから取得したデータを形式でデータを変換
データを処理する部分は、Logic(ロジック)という別の場所を用意して書くこともある。
【メリット】
MVCモデルのメリットとして、、
- 役割でアプリケーション開発が効率的に行える
- それぞれで分割して専門性が高い仕事が可能
- 専門的な仕事の独立性が非常に高い
- 変更などの対応にも柔軟に行なえる
おもに専門性の高い業務を分けることで、作業効率とクオリティーが向上や、別れている分野ごとに異なった専門性に特化しているため、高度なバグ修正やトラブルにも柔軟に対応できるメリットがあります。
【使用場面・特徴】
Modelは主に、データベースやその他のロジックなど、実際に行われる処理を担当します。
- 「データの取得」
- 「データの更新」
- 「データの削除」
- 「新規作成」
- 「日付のフォーマットの変換」
- 「データの一時的な保存」
- 「データの計算」
上記のようなものが該当します。それらの変更を見た目に反映させるため、viewに通知するという役割も担います。
Bean
「〇〇Bean.java」とか、Modelのクラスの命名によく「Bean」という単語を使ったりします。
Modelの機能をコンポーネント化したもの1個単位をに「Bean」と呼ぶこともあるようです。
Bean とは、Java言語で作成された普通のクラスのことで、名前の由来は、Javaのコーヒー豆という意味でBean(豆)という言葉を掛け合わせたもの。
【まとめ】
Modelはアプリなどの「実際に行われる処理」を記述するもの。
調べてたらメチャクチャ奥深いというか、今後一つのアプリを自作するか、分解して理解を深めるってことをやればすごくいい勉強になりそう。
今後CRUDアプリを作りつつ学んでいきたい。