CODEBASE School 7week(2月26日週)
この週は、DB、テーブル設計・ER図、アプリケーション設計について講義。Twitterとか食べログとコンビニのレシートなど実際に身の回りにあるものを例にとって学ぶスタイル。凄くわかりやすかったです。(SQLの基本的な書き方とかPHPでのPDOの使い方はProgateとPHP本読んで各自頑張りましょうスタイル)
CODEBASE School 7week
- テーブル設計・ER図
- アプリケーション設計
- 身近なサービスを例に設計を考える
テーブル設計・ER図
講義ででてきた単語メモ。(あんまり体系的に整理できてないけど、、)
- 一つのオブジェクト = 一つのテーブル
- 人とか物を一つのエンティティっていう。
- ユースケース図
- エンティティがどんな感じで使うのか、使われるのかユースケースを考えた図
- アクティビティー図
- 状態遷移図
- ECサイトを作るとして、買う、お金入金する、配送する、キャンセルする、などの流れ。
- クラス図。ログインfunctionとか、ログアウトfunctionとか、を図にする
- シーケンス図。とかもよく使う
- UML
- DBって多対多っていう関係性を持つことができないので、間に別の関係性(リレーション)を入れることで多対多を解決できる。多対多のリレーションが発生する場合は、間にその関係性がわかるテーブルを入れなきゃいけない。
- データベースを作るときは、まずER図をかく。そしてデータベースで表現する
- many to many
- モデルとオブジェクトとエンティティって似たようなワードが出てきたけど、意味同じ?
- 意味ほぼ同じ。世界観が違う
- モデルは、MVCモデルで話してるときの呼び名
- オブジェクトは、オブジェクト志向についての話をしている場合の呼び名
- エンティティはER図を書いているときの呼び名
- 意味ほぼ同じ。世界観が違う
アプリケーション設計
Webアプリケーションの設計プロセス(講義資料がわかりやすかったので引用。備忘)
要件定義
- どんなシステム作りたいか
- どんな価値を利用者に提供したいか
- 何を解決したいか
基本設計
詳細設計
- 画面のレイアウト及び機能設計
- UIデザイン
- 画面遷移
- URL設計
- 画面のレイアウト及び機能設計
コーディング
- コーディング
- テスト
身近なサービスを例に設計を考える
アプリケーションを作るときの流れの話。twitterっぽいアプリを作ることを例に。
- ER図(基本設計)
- URL設計、ワイヤーフレーム、画面(詳細設計)
- 新規登録できること
- Post /register
- ユーザーはログインできること
- Poost /login
- ユーザーはツイートできる
- ログインしてるユーザーの情報をみて色々取ってくる
- Post /tweet
- ユーザーは全体のツイート一覧を見ることができる
- Get /
- ユーザーは任意のツイートにLikeできる
- Post /tweat/{twiteid}/like
- ユーザーは任意のユーザーをフォローできる
- Post /follw/{userid}
- 個別のツイートページ
- GET /tweet/tweetid
ユーザーページ
- フォロー・フォローワーの情報
- GET /user/userid
アプリケーション作成の流れ
- 基本設計(基本的な機能など)
- 画面レイアウトを考える
- URLを設計する
- ER図を考える(DBの設計)
まとめ
この回の講義はめちゃめちゃ内容濃かった。0からアプリケーションを作るまでの流れはとても勉強になった。これから自分でアプリケーションを書くときに、またこの講義のことを振り返るようにする。