全体像
あなたがこれから作るほとんどのアプリは、互いにやり取りをする4つの部品でできています。
- frontend(フロントエンド) — ユーザーが見て、クリックする部分。ブラウザやスマホアプリの中にある画面、ボタン、文字です。
- backend(バックエンド) — あなたが管理するサーバー上で動くロジック。ルールを守らせ、作業をこなし、誰に何を許可するかを決めます。
- データベース — 情報が明日も残っているように保管される場所。アカウント、投稿、注文など。
- ホスティング — 世界のどこかにある実際のコンピューターで、上記すべてを実際に動かし、ほかの人がアクセスできるようにしてくれます。
これらがどうつながっているかを示します。
┌──────────────┐ リクエスト ┌──────────────┐ クエリ ┌──────────────┐
│ │ ─────────────────────▶ │ │ ──────────────────▶ │ │
│ FRONTEND │ │ BACKEND │ │ DATABASE │
│ (ブラウザ) │ ◀───────────────────── │ (サーバー) │ ◀────────────────── │ (保管庫) │
│ │ レスポンス │ │ 行(rows) │ │
└──────────────┘ └──────────────┘ └──────────────┘
見えるもの ルール+ロジック データがある場所
└──────────────────────────── これらすべては HOSTING の上で動く ───────────────────────────────────┘
frontendがデータベースに直接話しかけることは決してありません。必ずルールが置かれているbackendを経由します。このたった一つの事実が、アプリがどのように作られているか——そしてなぜ「ページにデータベースを直接読ませればいい」がほとんど答えにならないのか——を多く説明してくれます。