#DB設計とは
開発を始める前に、これから作成するアプリやシステムに必要な情報を洗い出し、
取り扱うデータをどのように管理していくかを決める作業です
なぜ必要か?
サービスはデータベースを持っています。
データベースには商品の情報、ユーザーの情報などなど多くのデータが保管されていきます。
こうしたデータ間の関係性を予め決めておく必要があります。
最初にデータベース設計を行うことで、データの関係性を明確にし、効率のいいデータ操作ができるようになるからです。
ポイント
DB設計はプログラムを書き始めるより前、最初に行うこと!
##DBの基礎
データベースを構成する要素は大きく分けて3つあります。
・エンティティ
・エンティティの属性
・エンティティ同士の関係性(リレーション)
1.エンティティとは
サービスの中で管理する必要がある情報のこと。
ex.「ユーザー」や「投稿内容」などの情報ははエンティティになります。
2.エンティティの属性とは
属性とは、エンティティが個別に持っている情報です。
ex.「ユーザー」というエンティティが持っている属性は、「名前」「アドレス」「パスワード」「住所」など。
3.リレーションとは
エンティティとエンティティ炉の間に存在する関係性のことを指します。
ex. twitterのようなメッセージ投稿できるサービスを例にすると
「ユーザー」一人に対して、「ツイート」を複数回することができます。
これを1対多の関係と言います。
(この関係性を後にER図という図にまとめていきます)
設計の順番
1.エンティティを決める
2.それぞれの属性を決める
3.リレーションを決める(関係性)
4.データベースのテーブルとして定義する
##最後に
実装中にER図を変更することもありますが、
DB設計を開発前にすることで、最初にどのようなデータ・システム・機能が必要か、
洗い出しができるので効率的に開発を進めていくことができました◎
今回は以上です。最後までお読みいただきありがとうございました^^