Quiet Reflections Logo
Quiet Reflections
G検定

非エンジニアのためのAI時代個人Web制作ノート#1|調べたことアレコレを簡潔に!

CHAPTER 1

Webページを支える進撃の巨人達

Google AI Studio・microCMS・GitHub・Firebase

1. 創造の鍛冶屋 Google AI Studio(GAS)

このアプリケーションは、AIaaS / PaaS的な性格を持つサービスです。
特に、Gemini APIを使った生成AIアプリ開発を始めるための環境として理解するとよい。

【役割:生成AIによるコード・ロジックの具現化】
本プロジェクトの「頭脳」。自然言語処理(NLP)での対話から、複雑なプログラムを生成します。

  • 中心技術:LLM(大規模言語モデル)
    • Googleの最新モデル「Gemini」を使用。
  • G検定重要ワード:プロンプトエンジニアリング
    • 抽象的概念を、AIが理解できる制約(Constraint)として与える技術。
      ※ただし、AIのバージョンが進むと以前のプロンプトでは、同じ出力が得られない可能性もある。あまり固執しすぎるのもよくないと感じた。

【できること】

項目

内容

主な役割

Geminiを使ったプロンプト実験、アプリ試作、APIキー取得

Web制作での使い方

自然言語で画面・機能・コード生成を相談する

G検定的キーワード

生成AI、プロンプト、API、マルチモーダル

GASは、Googleの生成AIモデルであるGeminiを使い、プロンプトの試行やAPI連携を始めやすくする開発環境です。公式にも、Gemini APIで構築を始める最速の方法として説明されています。

GASを「作業者」ではなく「設計士」として使うのがポイント。たとえば、「黒と白を基調にした静かな個人サイトにしたい」「記事一覧ページを作りたい」と自然な言葉で伝え、AIに構成やコードを提案してもらう。

AIと対話しながら、Web制作の設計・実装を進める場所と言える。

板書メモ

  • プロンプト:AIへの指示文
  • API:別サービス同士をつなぐ窓口
  • 生成AI:文章・画像・コードなどを生成するAI
  • マルチモーダル:テキストだけでなく画像・音声なども扱える性質

Next.js 15

「最高に効率が良いけれど、放っておくと自分勝手に記憶(キャッシュ)を優先してしまう、ちょっと頑固で天才肌なコンシェルジュ」

🔍 Deep Dive:AIが選んだ最強の武器「Next.js 15」

  • 特徴: Reactベースの最新Web制作フレームワーク
  • なぜAIと相性が良い?: 「書き方の型」が厳格に決まっているため、AIは学習した膨大なコーディングデータに基づき、バグの少ない高精度なコードを出力できる。

1. 「静」と「動」を使い分けるハイブリッド・シェフ

Next.js 15は、1枚のWebページの中に、「あらかじめ作っておく部分(静的)」「その場で作り出す部分(動的)」を混在させることができます。

  • 静的(SSG: Static Site Generationホテルの「固定メニュー」。誰がいつ見ても同じ。
    • G検定ワード: 推論の高速化。あらかじめ計算(ビルド)を済ませておくことで、ユーザーへの応答速度を極限まで高めます。
  • 動的(SSR: Server-Side Rendering「本日の日替わり」。注文(アクセス)が入ってから作る。
    • 実例(過去のトラブル): microCMSの記事一覧。これをお店(Firebase)に出した途端、Next.js 15が気を利かせすぎて「固定メニュー」だと勘違いし、更新が止まってしまった事件(バグ)あり。

2. 「キャッシュ」という名の記憶力

Next.js 15の最大の特徴(そして手強い実態)は、「一度調べたことは二度と調べない」という強烈な記憶力です。

  • 実態: microCMSにデータを取りに行く際、「さっき見たから、次も同じでしょ?」と勝手に判断します。
  • G検定ワード: 効率的なリソース活用。無駄な計算(API通信)を省くための最適化ですが、これが裏目に出ると「情報が古いまま」になります。
  • 解決策: GASが提示した「force-dynamic(常に最新を取りに行け)」という指示は、コンシェルジュに「自分の記憶を疑え」と命令したことになります。

3. 「React Server Components」という裏方仕事

Next.js 15では、「サーバー側(裏方)」でほとんどの仕事を済ませて、ユーザーのスマホ(表舞台)には完成品だけを届けるという実態があります。

  • 実例: 従来のWebは、スマホの中で重いプログラム(JavaScript)を動かしていましたが、Next.js 15はサーバー側(Firebaseの裏側)で組み立てを完了させます。
  • メリット: スマホの電池を食わず、読み込みが「静寂(Quiet)」なほど速い。
  • G検定ワード: エッジコンピューティング的発想。ユーザーに近い場所で処理を行い、クライアント(スマホ)側の負荷を最小限に抑える構造です。

図解

2. 無限の知の源泉 microCMS(CMS)

このアプリケーションは、SaaS / Headless CMSに該当するサービスです。
SaaSは、ソフトウェアをインターネット経由で利用する形です。

【役割:コンテンツの構造化保管】 記事データのみを管理し、APIで配信するヘッドレスCMS

  • G検定重要ワード:API(Application Programming Interface)
    • ソフトウェア同士がデータをやり取りする「窓口」。

【できること】

項目

内容

主な役割

記事・画像・カテゴリなどのコンテンツ管理

Web制作での使い方

管理画面で入力した記事をAPIでサイトに表示

G検定的キーワード

SaaS、API、データ、クラウド

microCMSは、APIベースの日本製Headless CMSです。公式サイトでも、管理画面を自作せず、APIからデータを取得できるCMSとして説明されています。

WordPressは「記事を書く場所」と「サイト表示の仕組み」が一体型です。
一方、microCMSは主に「記事データを管理する場所」です。サイトの見た目は別で作り、記事データだけをmicroCMSから取得します。

これを「Headless CMS」と呼びます。
Headlessとは、頭がないという意味です。ここでいう「頭」は、見た目の画面部分です。つまり、記事管理の裏側だけを持ち、表示画面は別で作るCMSという理解で十分です。

記事を管理し、WebサイトへAPIで届ける本棚と言える。

板書メモ

  • CMS:記事や画像を管理する仕組み
  • Headless CMS:表示画面を持たず、データ管理に特化したCMS
  • APIベース:データをAPI経由で受け渡しする仕組み

JSON(.json)

microCMSとNext.jsは「プログラム同士」の会話です。そこに人間の感情やメモ(コメント)は不要です。「1文字のミスもなく、最短距離でデータを届ける」ためには、世界標準のJSONが最適。

🔍 Deep Dive:データの共通言語「JSON(.json)」

  • 様態: 半構造化データ(Key-Value形式)。
  • 役割: microCMSに保管された記事を、Next.jsという「表示側」に届ける際のパッキング形式。
  • Key:
    • "title": "G検定対策" ⬅️ このように意味(Key)と中身(Value)が対になっている。
    • 人間にも読みやすく、機械(AI)も処理しやすいため、現代のWebの標準語。

■ JSONの実態:「国際標準のパッキング・リスト」

JSONの実態を最もよく表す例は、通販の「送り状(納品書)」です。

荷物(データ)を microCMS という倉庫から Next.js という店舗へ運ぶとき、中身が何であるかを誰でも(どのシステムでも)読み取れるように共通の書式で書かれたラベル、それがJSONです。

【JSONの板書メモ】

  • 特徴: { }", が非常に多い。
  • 実態例: ```json { "商品名": "G検定公式テキスト", "価格": 3000, "在庫": true }

図解

3. 鉄腕の総監督 GitHub(GH)

このアプリケーションは、SaaS型の開発プラットフォームに該当するサービスです。
Gitというバージョン管理の考え方を、クラウド上で使いやすくしたサービスです。

【役割:バージョン管理 兼 自動化のハブ】
コードの保管だけでなく、テストから公開までを全自動化する「総監督」。

  • G検定重要ワード:CI/CD(継続的インテグレーション/デリバリー)
    • コードを保存した瞬間に、自動でビルド・デプロイを行う仕組み。

【できること】

項目

内容

主な役割

ソースコードの保存、変更履歴管理、共同開発

Web制作での使い方

Google AI Studioで作ったコードを保存・管理

G検定的キーワード

クラウド、開発環境、バージョン管理

GitHubは、ソースコードをホスティングし、レビューやプロジェクト管理をしながら開発できるプラットフォームです。公式サイトでも、ソースコードをホスティングし、他の開発者とレビューや管理を行える場として説明されています。

非エンジニアにとってGitHubは難しく見えますが、最初は「コードの保管庫」と考えると理解しやすいです。

重要なのは、変更履歴を残せることです。
たとえば、AIに修正してもらった結果、サイトが壊れた場合でも、前の状態に戻しやすくなります。

開発の保管庫及びコードの変更履歴を管理し、いざとなればBuildとDeployもこなす万能屋と言える。

板書メモ

  • Git:変更履歴を管理する仕組み
  • GitHub:Gitをクラウドで使いやすくするサービス
  • リポジトリ:コードを入れておく箱
  • コミット:変更内容の記録

YAML(.yml)

GitHub Actions(deploy.yml)は、「人間」が「自動化ロボット」に手順を教えるためのもの。

🔍 Deep Dive:自動化の指示書「YAML(.yml)」

  • 様態: 半構造化データ
  • 役割: GitHub Actions(ロボット)に対する「自動搬送の手順書」。
  • key:
    • IaC(Infrastructure as Code)の一端。
    • インデント(字下げ)で構造を表現。
    • 例:「まずNext.jsを立ち上げて、次にFirebaseへ送れ」という手順を記述。

■ JSON vs YAML:使い分けの決定打

比較項目

JSON (.json)

YAML (.yml)

主な用途

システム間の通信用(API)

ツールの設定用(GitHub Actions等)

読みやすさ

記号が多くて目が回る

インデント(字下げ)でスッキリ

コメント

書けない(致命的!)

書ける(「ここは重要」等とメモできる)

厳格さ

カンマ一つ忘れてもエラー

インデント(スペース数)に厳しい

💡 結論:使い分けのルール

  • 「通信」なら JSON
    • (例:microCMSから記事データを引っ張る時)
    • 理由:プログラムが読み取るための「共通パスポート」だから。
  • 「設定」なら YAML
    • (例:GitHub Actionsで自動デプロイの手順を書く時)
    • 理由:人間が読んで理解し、コメントを残すための「レシピ本」だから。

図解

4. ワールド・エッジ Firebase (FB)

このアプリケーションは、BaaS / PaaSに近いクラウドサービス群です。
Backend as a Service、Platform as a Serviceの考え方に関連します。

【役割:サーバーレス・ホスティング】
世界中の読者にブログを爆速で届ける「お店の建物(インフラ)」。

  • G検定重要ワード:サーバーレス(Serverless)
    • OSのアップデートやサーバーの物理的な管理をGoogleが代行。ユーザーは「コードを置くだけ」でOK。
  • CDN(Content Delivery Network)
    • 世界中にデータをキャッシュ(一時保存)し、物理的な距離による遅延を解消。

【できること】

項目

内容

主な役割

Webアプリ・モバイルアプリの公開、運用、拡張

Web制作での使い方

完成したWebサイトをインターネット上に公開

G検定的キーワード

クラウド、BaaS、PaaS、スケーラビリティ

Firebaseは、Googleが提供するモバイル・Webアプリ開発プラットフォームです。公式サイトでは、アプリの構築・実行を、速度・安全性・拡張性の面から支援するサービス群として説明されています。

今回の構成では、Firebaseは「公開する場所」として考えるとわかりやすいです。
Google AI Studioで作り、GitHubで保管し、microCMSから記事を取得し、最後にFirebaseで公開する。つまり、読者が実際にアクセスするWebサイトの土台になります。

作ったWebサイトを高速通信網へ公開・運用するGoogleの土台と言える。

板書メモ

  • BaaS:バックエンド機能をサービスとして使う形 (Backend as a Service)
  • PaaS:アプリを動かす土台をサービスとして使う形  (Platform as a Service)
  • Hosting:Webサイトを公開する仕組み
  • スケーラビリティ:アクセス増加に対応しやすい性質

firebase.json

「JSONという汎用的な言語(データ形式)」を使って書かれた、「Firebase専用の命令書(固有のファイル)」

🔍 Deep Dive:配信ルールの定義ファイル「firebase.json」

  • 様態: 半構造化データ
  • 役割: Firebaseに対し、「どのURLでどのページを出すか」を教える設定。
  • G検定視点: 物理サーバーの設定(Apache等)をファイル一個(JSON)で完結させる抽象化技術の好例。

1. firebase.json は「お店の運営マニュアル」

Firebase Hostingという「お店(インフラ)」を動かすとき、Googleのシステムは必ずプロジェクトのルート(一番上の階層)にある firebase.json という名前のファイルを読みに行きます。

  • 名前の固有性: setting.jsonmy-config.json ではダメなのです。「この名前のファイルに、運営ルールが書いてある」という世界共通の約束事になっています。
  • 役割: 「どのフォルダを公開するか」「URLの末尾をどう整えるか」といったインフラの挙動を定義します。

2. なぜ YAML ではなく JSON なのか?

「設定ファイルならYAMLの方が人間には読みやすい」と先ほどお話ししましたが、FirebaseはあえてJSONを採用しています。

  • 理由: Firebase自体がGoogleの巨大なシステム群の一部であり、システム内部での処理スピードや、他のプログラムとの連携の確実性を優先したためだと考えられます。
  • 対比: GitHub Actions: 「人間」が書く手順書なので YAML
    • Firebase: 「システム」が厳格に読み取るルールブックなので JSON (firebase.json)

3. G検定の文脈での重要性:抽象化(Abstraction)

firebase.json を強調した最大の理由は、これが「インフラの抽象化」を象徴しているからです。

昔はサーバーを動かすために、黒い画面(コマンドライン)で複雑な設定を何百行も書く必要がありました。しかし今は、この「たった一つのJSONファイル」を書き換えるだけで、Googleの強力なサーバー群を意のままに操れます。 「複雑なものを、一つのファイル(データ)として扱う」という考え方は、G検定でも重要な「効率化」や「仮想化」の概念に通じます。


図解
図解

上図は、プロンプトで指示して、上述の巨人達をつなげて可視化してとGemAにお願いした結果の出力になります。

G検定で習ったワードで説明すると、

"Geminiに放ったプロンプトは、まず自然言語処理(NLP)の多層的なプロセスへと投入されます入力された文字列はトークナイズされ、高次元の特徴量空間における分散表現(ベクトル)へと変換されます。

トランスフォーマー(Transformer)アーキテクチャの核である注意機構(Attention)が、単語間の相関関係を動的に重み付けし、意図(コンテクスト)を精緻に抽出します。これは単なる文字列の処理ではなく、深層学習(Deep Learning)によって構築された膨大な知識モデルからの推論(Inference)そのものです。

さらに、Geminiのマルチモーダルな性質が、テキストという「非構造化データ」を、アーキテクチャ図という「構造化された視覚情報」へと変換します。潜在空間(Latent Space)において、「GitHub」や「Firebase」といった概念が論理的な結合を持ち、生成AIとしてのデコーダがそれを図式として描き出した。"

といったところか!

まとめSummary

まとめブロック

  • Google AI Studio
    • AIと対話しながら、プロンプトで設計・実装を進める場所
    • 生成AI、プロンプト、Gemini APIの理解につながる
  • microCMS
    • 記事や画像などのコンテンツを管理するHeadless CMS
    • WordPressと違い、表示画面と記事管理を分けて考える
  • GitHub
    • コードを保存し、変更履歴を管理する開発プラットフォーム
    • 失敗しても前の状態に戻しやすい
  • Firebase
    • 作ったWebサイトやアプリを公開・運用するGoogleのクラウド基盤
    • Hosting、BaaS、PaaS、スケーラビリティの理解に役立つ
  • 4つをつなげた全体像
    • Google AI Studio:作る
    • GitHub:保存する
    • microCMS:記事を管理する
    • Firebase:公開する
QUIZ 1

Google AI Studioの説明として、最も適切なものはどれか。 A. ソースコードの変更履歴を管理するサービス B. Gemini APIを使った生成AIアプリ開発を始めやすくする環境 C. 記事データだけを管理するHeadless CMS D. Webサイトを公開するためだけのHosting専用サービス

解答を見る
A.

正解

B

解説

Google AI Studioは、Gemini APIを使ったプロンプト実験やアプリ開発を始めるための環境です。AはGitHub、CはmicroCMS、DはFirebase Hostingに近い説明です。

QUIZ 2

Headless CMSの説明として、最も適切なものはどれか。 A. AIが自動でコードを生成するCMS B. 表示画面とコンテンツ管理を分け、APIでデータを提供するCMS C. Gitの変更履歴を管理するCMS D. Webサイトを公開するためのクラウド基盤

解答を見る
A.

正解

B

解説

Headless CMSは、記事や画像などのコンテンツ管理に特化し、表示画面は別で作る考え方です。microCMSはAPIベースのHeadless CMSとして理解できます。

QUIZ 3

microCMSから取得するJSON形式のように、データの項目名と値がセットになっており、柔軟な構造を持つデータ形式を何と呼ぶか? A. 非構造化データ B. 構造化データ C. 半構造化データ D. マルチモーダルデータ

解答を見る
A.

正解

C

解説

CSVのような完全な表形式(構造化)でも、画像や音声のような未整理(非構造化)でもない、JSONやXMLは「半構造化データ」に分類されます。

QUIZ 4

GitHub Actions等を用いて、プログラムの変更を自動で検知し、ビルドから本番公開までをシームレスに行う手法を何と呼ぶか? A. アジャイル開発 B. ウォーターフォール開発 C. CI/CD D. DevOps(デブオプス)

解答を見る
A.

正解

C

解説

継続的インテグレーション(CI)と継続的デリバリー(CD)を組み合わせた「CI/CD」です。D.のDevOpsは、より広義の「開発と運用の協力体制」を指す概念です。

QUIZ 5

Webサイトの公開(ホスティング)において、Firebase Hostingのようなサービスを利用する最大のメリットは何でしょうか。 A. オンプレミスでの運用により、OSのアップデートから物理的なサーバー管理まで、すべてを自分たちで自由にコントロールできる点。 B. サーバーレス(Serverless)の仕組みにより、インフラの管理をクラウド事業者に任せ、開発者が「コード(価値)」の作成に専念できる点。 C. エッジコンピューティングを導入することで、すべてのデータを中央のサーバーに集約し、一元管理によるセキュリティ強化を図れる点。 D. 仮想化技術を利用して、一台の物理サーバーを分割し、複数の異なるOSを個別にパッチ管理する必要がなくなる点。

解答を見る
A.

正解

B

解説

  • 選択肢A(×): これはFirebaseとは真逆の形態です。OSの管理が必要なのは「オンプレミス」や「IaaS」の特徴であり、今回のプロジェクトの目的である「運用の効率化」には適しません。
  • 選択肢B(○): 大本命です! FirebaseのHostingは、開発者がサーバーの存在を意識せずに済むサーバーレスの代表例。G検定でも「管理責任の移譲」や「リソースの最適化」として頻出の概念です。
  • 選択肢C(×): エッジコンピューティングは「分散」させる技術であり、「集約」するものではありません。用語の使い方が誤っています。
  • 選択肢D(×): 仮想化技術(ハイパーバイザ等)はサーバーレスの裏側で動いていますが、開発者が「OSを個別に管理しなくて済む」のは、サービスがさらに抽象化された「BaaS/PaaS」の階層に到達しているからです。
非エンジニアのためのAI時代個人Web制作ノート#1|調べたことアレコレを簡潔に!