付録2
想定学習時間: 8分
プログラミング学習を進める上で、頻繁に登場する専門用語があります。これらの用語を理解することは、開発者コミュニティでのコミュニケーションや、より高度な技術を学ぶための土台となります。このレッスンでは、特に重要な開発用語を一つずつ丁寧に解説します。
複数の開発者が協力してコードを管理したり、過去の変更履歴を追跡したりするために、バージョン管理システムが使われます。ここでは、その代表的なツールであるGitに関連する基本的な操作と概念を説明します。
自分のパソコン(ローカル環境)で行ったGitの変更履歴を、GitHubのようなオンライン上のリポジトリに送信する操作です。ローカルでの作業内容をチームメンバーと共有したり、オンライン上にバックアップしたりするために行います。
GitHubなどのオンラインリポジトリにある最新の変更履歴を、自分のパソコンに取り込む操作です。他の開発者が行った更新や、他の場所で変更された内容を自分の環境に反映させる際に利用します。
メインのコードの流れから分岐させて、新しい機能の開発や修正作業を独立して行うための仕組みです。安定しているメインのコードに影響を与えずに、新しい試みや実験的な作業を進めることができます。初心者のうちは「別ルートで安全に試すための仕組み」と理解しておくと良いでしょう。
アプリケーション開発では、コードを書く場所、テストする場所、そして実際にユーザーが使う場所が異なります。これらの環境に関する用語を理解することは、安全で効率的な開発に繋がります。
あなたのパソコンの中の環境を指します。「ローカルで動かす」とは、インターネットに接続されたサーバーではなく、あなたのパソコン上でアプリケーションやコードを実行することを意味します。本格的に公開する前に、まずローカル環境で動作確認を行うのが一般的です。
インターネット上でWebアプリケーションやデータを動かすための、高性能なコンピューターです。Webサイトやオンラインサービスは、このサーバー上で常に稼働しており、世界中のユーザーからのアクセスに応答します。本格的なWebアプリケーションは、通常サーバー上で動作します。
実際に利用者が使う、公開されたアプリケーションの環境です。お客様や社内メンバーが日常的に利用する状態を指します。本番環境では、セキュリティ、データ保護、エラー対応、バックアップ、権限管理など、運用に関するあらゆる側面を慎重に考慮する必要があります。
プログラマーがコードを記述し、動作確認やテストを行うための環境です。あなたのパソコン上の環境や、テスト専用に用意された環境がこれに該当します。本番環境と開発環境を明確に区別することは、安全な開発プロセスにおいて非常に重要です。
開発したアプリケーションを、利用者がアクセスできる場所に公開する作業です。例えば、Webアプリケーションをサーバーに配置し、インターネットを通じてURLでアクセスできるようにすることなどがデプロイにあたります。デプロイ後は外部からアクセスされる可能性があるため、公開前の最終確認が不可欠です。
プロジェクトの情報を整理したり、アプリケーションで扱うデータを保存したりするための用語です。
プロジェクトの説明書となるファイルです。通常、プロジェクトのルートディレクトリに配置され、そのプロジェクトが「何のツールか」「どう使うか」「どんな機能があるか」「注意点」「今後の改善案」といった情報を記載します。後で自分が見返したり、他の開発者がプロジェクトを理解したりする上で非常に役立ちます。
データを整理して保存するためのシステムです。顧客情報、注文履歴、メモ、タスクリストなど、構造化されたデータを効率的に管理し、検索や更新を高速に行うことができます。本格的なWebアプリケーションでは、ほとんどの場合データベースが利用されます。
Webブラウザの中に、比較的簡単なデータを保存できる仕組みです。メモアプリやチェックリストの練習など、ブラウザを閉じてもデータを保持したい場合に利用できます。ただし、保存できるデータ量には限りがあり、個人情報や重要な業務データを保存する用途には適していません。
表形式のデータを保存するためのファイル形式です。各データ項目がカンマで区切られており、ExcelやGoogleスプレッドシートなどで簡単に開くことができます。システムからのデータ出力や、異なるシステム間でのデータ交換によく使われます(例: 売上データ、顧客リスト)。
現代のアプリケーション開発では、他のサービスと連携したり、既存の便利な機能を活用したりすることが一般的です。これに関連する用語を解説します。
別のサービスやシステムとプログラム的にやり取りするための窓口です。例えば、AIの機能を自分のアプリケーションから利用したり、外部サービスのデータを取得したり、メール送信サービスと連携したりする際にAPIを使います。APIを利用する際は、APIキーの管理、利用料金、セキュリティに十分注意が必要です。
APIを利用するための「鍵」となる、固有の文字列です。APIキーが他人に知られると、不正に利用されたり、意図しない費用が発生したりする危険性があります。そのため、APIキーはコードに直接記述したり、GitHubなどの公開リポジトリにアップロードしたりしてはいけません。
開発で利用できる「部品」のようなものです。特定の便利な機能をまとめたコードのセットと考えると分かりやすいでしょう。例えば、CSVファイルを読み書きするためのパッケージや、Web画面を効率的に構築するためのパッケージなどがあります。
よく使う機能や汎用的な処理をまとめたコードの集まりです。一から全てを自分で作る代わりに、ライブラリを組み込むことで、手軽に便利な機能を取り入れることができます。ただし、使用するライブラリの信頼性や、プロジェクトへの適切な組み込み方を確認することが重要ですS。
アプリケーション開発のための「土台」や「骨組み」を提供するものです。開発のルールや構成がある程度決まっているため、大規模なアプリケーションを効率的かつ一貫性を持って開発しやすくなります。初心者の場合は、まずHTML、CSS、JavaScriptといった基本的な要素で小さなアプリケーションを作り、開発の感覚を掴んでからフレームワークに進むと理解が深まりやすいでしょう。
人にたとえると
チームで一つの大きな企画書を作成し、公開するまでの流れを想像してみましょう。
各自が自分の手元で企画書の草稿を作成します。作成した内容をチーム全体で共有するため、共有フォルダに送ります。他のメンバーが更新した最新の情報を自分の草稿に反映させる場合は、共有フォルダから取り込みます。新しいアイデアを試す際は、メインの企画書とは別に、一時的な作業スペースで検討を進めます。最終的に完成した企画書は、関係者全員が閲覧できる正式な場所に掲載されます。