分野から学ぶ:部品の「役割」で分ける
ソフトウェアを構成する12の分野。「何のための部品か」で分けている。上から順に学ぶことを想定した並びで、分野同士のつながりは全体像に図と文章で解説している。
| 順 | 分野 | 何をする分野か | 最初に触るなら | 掲載ツール |
|---|---|---|---|---|
| 01 | 言語・実行環境 | プログラムを書くための「言葉」と、それを動かす仕組み すべての分野の部品は、いずれかの言語で書かれている。地図のいちばん下にある土台 | Python | Node.js 、Python 、Go 、TypeScript 、Rust |
| 02 | 画面・フロントエンド | 利用者が見て、触る画面をつくる。ブラウザの中で動く部分 利用者にいちばん近い層。ここから裏側(サーバー)に頼み事をして、返ってきたデータを見せる | Astro | Astro 、React 、SvelteKit 、Next.js |
| 03 | サーバー・API | 画面の裏側で、頼まれた処理をしてデータを返す係 画面とデータの間に立ち、「誰が何をしてよいか」を決める。アプリのルールはここにある | Supabase | FastAPI 、Firebase 、Hono 、Supabase |
| 04 | データの保存 | データをなくさず置いておく場所。形(表・文書・ファイル)で種類が分かれる アプリの「記憶」。サーバーが読み書きし、溜まったものは後で分析にも使う | SQLite | Amazon S3 、Redis 、SQLite 、MongoDB 、PostgreSQL 、Meilisearch |
| 05 | 実行基盤・ホスティング | 書いたコードを、自分のパソコンの外で動かし続ける場所 画面・サーバー・データベースを「載せる」土台。ここに載せて初めて、他人が使える | GitHub Pages | GitHub Pages 、Render 、Vercel 、AWS Lambda 、Cloudflare Workers 、Docker 、Fly.io |
| 06 | 開発基盤・CI/CD | コードの変更を、壊さずに本番へ届ける仕組み 「書いた」と「動いている」の間をつなぐベルトコンベア。履歴・検証・配信の3つを担う | Git | GitHub 、GitHub Actions 、Git 、GitLab 、Playwright 、Terraform |
| 07 | 監視・可観測性 | 動いているものの様子を知り、壊れたら気づく 公開したあとの「目」。これがないと、壊れても利用者から言われるまで分からない | Sentry | Sentry 、Datadog 、Prometheus + Grafana |
| 08 | 認証・セキュリティ | 誰がアクセスできるかを決め、守る 画面とサーバーの入口に立つ門番。本人確認(認証)と、してよいことの範囲(認可)を扱う | Clerk | Auth0 、Cloudflare WAF / DDoS 保護 、OAuth 2.0 / OpenID Connect 、Clerk |
| 09 | 自動化・連携 | 決まった作業を、人手なしで繰り返す 人が毎回やっていた作業を機械に渡す。周りの分野をつなぐ接着剤でもある | Google Apps Script | cron / systemd timer 、Google Apps Script 、n8n |
| 10 | ノーコード・SaaS | コードを書かずに済ませる選択肢 学習の近道であり、限界に当たったときに「コードが必要な理由」を教えてくれる | Zapier | Airtable 、Make(旧Integromat) 、Notion 、Zapier |
| 11 | データ処理・分析 | 溜まったデータを集計・変換・可視化する 保存されたデータを「使う」側。分析と AI の前段にあたる | pandas | DuckDB 、BigQuery 、pandas |
| 12 | AI・機械学習 | 文章の生成・要約・分類や、予測をアプリに組み込む 最後に足す部品。API を呼ぶだけなら、他の分野を一通り知った初学者でも使える | Claude API(Anthropic) | Claude API(Anthropic) 、OpenAI API 、Ollama 、Hugging Face |