Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
MVCフレームワークの基礎
Search
shin4488
July 31, 2022
Programming
86
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
MVCフレームワークの基礎
社内の教育用として作成した資料を一般的な内容に変更して公開しました。
MVCフレームワークの概念など、さわりの部分を説明しております。
かなり基礎的な部分の説明のみを行っております。
shin4488
July 31, 2022
Other Decks in Programming
See All in Programming
設計次第でAIコードの読む量は減らせる / designing-for-code-reading
minodriven
35
17k
Jetpack Compose Mechanisms
skydoves
3
820
3回つくってわかった、 定期実行ジョブ基盤の本質情報
takai
0
480
すこし踏み込む CancellationToken
htkym
2
1.7k
Railsのためのパスキー実践入門 〜マルチテナントSaaSでの意思決定〜
utakaha
2
560
Optunaを作ったときにやりたかったこと、その後 (2026/10/16, Optuna Meetup #3)
iwiwi
1
430
KiroのSpecで「五目並べ」を作ってみる
satoshi256kbyte
1
380
残高管理から台帳サービスへの進化
artoy
1
200
気持ちぃ〜角丸 Squircle
ryu1013
0
310
月間100万人のサービス刷新で、 技術選定をHonoに振り切った話
yutobara
8
6.6k
UPDATE をやめる — EF Core でマスタをバージョン管理する
panda728
PRO
0
1.2k
FactoryBotをやめればRSpecは速くなるのか?
yuta_onishi_97
0
460
Featured
See All Featured
Large-scale JavaScript Application Architecture
addyosmani
516
110k
The Language of Interfaces
destraynor
162
27k
A Soul's Torment
seathinner
8
3.8k
For a Future-Friendly Web
brad_frost
184
10k
End of SEO as We Know It (SMX Advanced Version)
ipullrank
3
4.4k
Context Engineering - Making Every Token Count
addyosmani
9
1.2k
The Curious Case for Waylosing
cassininazir
1
570
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
35k
How to Align SEO within the Product Triangle To Get Buy-In & Support - #RIMC
aleyda
2
1.8k
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
500
HDC tutorial
michielstock
2
960
Designing Powerful Visuals for Engaging Learning
tmiket
1
610
Transcript
MVCの説明 @shin4488
MVCとは? (Model View Controller)
MVCの説明の前に Webアプリケーションサーバ構成として、 役割ごとに「3層構造」でサーバを分ける 考え方がよく使用されます Webサーバ アプリケーション サーバ DBサーバ
MVCとは MVCでは「アプリケーションサーバ」 の中身を考えていきます Webサーバ DBサーバ アプリケーション サーバ
MVCとは 1. Model 2. View 3. Controller 「3つ」とは? アプリケーションサーバ内のプログラムを 「3つに役割分担」しましょう!という考え方
MVCの3つの役割分担 Model…データベースのデータを取得・更新・処理する担当 View…表示するWeb画面を作成する担当 Controller…クライアントからのリクエストによって処 理を振り分ける(呼び出すModelやViewを切り替え る)担当 HTML CSS Javascript DB
データ取得・処理
なぜ役割分担が必要?(MVCのメリット1) 機能を追加・変更しやすい Controller Model View View(追加) 画面を 追加したい! Modelは 修正不要
一部を変更するだけで、機能の追加・修正が可能
なぜ役割分担が必要?(MVCのメリット2) Controller Model View 画面のバグ? リクエスト 受け取りのバグ? データ処理 のバグ? 不具合時の修正箇所を見つけやすい
バグの種類によって、修正箇所が明確になる
MVCの考え方を取り入れたシステムの全体像 Webサーバ DBサーバ 1. Webサーバを通じてリクエストをControllerが受信 2. 適宜、必要なModelの処理実行やViewを作成 3. Webサーバを通じて、作成したViewをレスポンスとして返却 アプリケーションサーバ
Controller Model View
参考書籍 「プロになるためのWeb技術入門」 ――なぜ、あなたはWebシステムを開発できないのか