← PC・IT用語集へ戻る

ソースコード

Source Code
プログラムやWebページの動作・構造・見た目などを、人間が読める形で記述したテキストのこと。HTML、CSS、JavaScriptなどで書かれたファイルがこれにあたる。
ソースコード (Source Code)

概要(サマリー)

ソースコードとは、プログラムやWebページの動作・構造・見た目などを、人間が読める形で記述したテキストのことである。「ソース」や「コード」と略して呼ばれることも多い。HTMLCSSJavaScriptPythonSQLなどで書かれたファイルがこれにあたる。多くの言語では、実行環境がソースコードを解釈したり、コンパイルして実行できる形にしたりして動かす。AIにコードを生成・修正してもらうとき、そのやりとりの中心にあるのが常にソースコードだ。

詳細解説

ソースコードがコンピュータで動くまで

ソースコードは、言語や実行環境によって動かし方が異なる。そのまま実行環境が解釈する場合もあれば、別の形式に変換してから実行する場合もある。

コンパイル型言語(C・C++Go など)
ソースコードを事前に機械語(バイナリ)へコンパイルし、その成果物を実行する。実行前に変換しておくため、高速に動かしやすい。

インタープリタ型言語(Python・Ruby など)
ソースコードを1行ずつ解釈しながら実行する。事前コンパイルが不要で手軽に動かせる。

トランスパイル型(TypeScript → JavaScript など)
別の言語のソースコードに変換してから実行する。

良いコードと悪いコードの具体例

同じ処理でも、ソースコードの書き方によって読みやすさは大きく変わる。

悪い例(意味が伝わりにくい)

function calc(x, y) {
  return x * y * 0.1;
}

何を計算しているのか、0.1 が何を意味するのかが、コードを読んだだけではわからない。

良い例(意味が伝わる)

const TAX_RATE = 0.1;

function calcTaxAmount(price, quantity) {
  return price * quantity * TAX_RATE;
}

変数名・関数名・定数名が「何をするものか」を語っている。0.1 のようなマジックナンバーも除去されている。

DRY原則(Don't Repeat Yourself)

「同じ知識やルールを複数箇所に重複して持たせない」という原則をDRYと呼ぶ。

DRY違反の例

const priceA = 1000 * 1.1;
const priceB = 2000 * 1.1;
const priceC = 3000 * 1.1;

消費税率(1.1)が3ヶ所に散らばっており、税率が変わったときに全箇所を修正しなければならない。修正漏れがバグの原因になる。

DRY原則に従った例

const TAX_RATE = 1.1;

const priceA = 1000 * TAX_RATE;
const priceB = 2000 * TAX_RATE;
const priceC = 3000 * TAX_RATE;

税率を1ヶ所で管理することで、変更が一か所で済む。さらに「税込み計算」という処理が複数ある場合は関数化すると、より重複が減る。

ソースコードの品質とは

コードは「動くかどうか」だけでなく「読みやすいかどうか」も重要だ。良いソースコードの特徴として、以下が挙げられる。

  • 意味のある変数名・関数名がついている
  • マジックナンバーがなく、定数が適切に使われている
  • 同じ処理が重複していない(DRY原則)
  • コメントアウトが必要な箇所にだけある

コードは書くときよりも読まれる時間のほうが長い。将来の自分や他のメンバーが読んだときに意図が伝わることが、良いソースコードの条件といえる。

ソースコードの管理(バージョン管理)

多くの開発現場では、ソースコードはGitなどのバージョン管理システムで履歴を管理する。バージョン管理を使わずに管理すると、以下のような問題が起きやすい。

  • 誰かが誤ってファイルを上書きし、以前の内容が消える
  • 「どの変更がバグを引き起こしたか」を追えない
  • チームで作業するとお互いの変更が衝突する

Gitを使うと変更履歴が記録されるため、「1週間前の状態に戻す」「この変更を加えたのは誰か」を確認できる。AIコーディングでも同様で、AIが生成したコードで問題が起きたとき、Gitで変更前の状態に戻せることが安全網になる。

AIコーディングとソースコード

AIは自然言語の指示からソースコードを生成できる。生成されたコードをそのまま使うのではなく、内容を理解してから使うことが重要だ。理解できないコードはデバッグもできないし、リファクタリングもできない。「AIが書いたから大丈夫」という過信は避けたい。

AIが生成するコードは動作するが、読みやすさが最適ではない場合もある。「変数名をわかりやすくして」「重複した処理を関数にまとめて」といった指示で、品質を後から改善してもらうことも有効な使い方だ。

よくある勘違い

ソースコードとバイナリ(実行ファイル)は同じもの?

異なる。ソースコードは人間が書いたテキストであり、バイナリ(.exe ファイルなど)はそれを機械が実行できる形に変換したものだ。ソースコードがない状態でバイナリを読んで修正するのは、通常の開発では非常に難しい。

コードをコピーすれば動く?

必ずしもそうではない。コードは環境(OSや言語バージョン・ライブラリ)に依存するため、自分の環境に合っていなければエラーが出ることがある。また、他者のコードには著作権が存在する場合もある。

短いコードのほうが良いコード?

一概にそうとは言えない。短くても意味が伝わらないコードより、少し長くても読みやすいコードのほうが保守しやすい。極端な短縮(minification)はWebの配信用途では使われるが、開発中のソースコードには適用すべきではない。

AIコーディングとの関係

AIにコード生成や修正を依頼するとき、ソースコードの意味を理解していると、出力されたコードやエラー内容を判断しやすくなる。
プログラムやWebページの動作・構造・見た目などを、人間が読める形で記述したテキストのこと。

AIへ相談するときは、「何をしたいのか」「どの環境で起きているのか」「どのファイルやエラーを見ているのか」を一緒に伝えるとよい。
用語だけを投げるより、具体的な状況と期待する結果を添えることで、より実用的な回答を得やすくなる。

まとめ

  • ソースコードは、プログラムやWebページの動作・構造・見た目などを、人間が読める形で記述したテキストのこと。
  • 関連する用語や実際の作業場面と一緒に理解すると、使いどころを判断しやすい。
  • AIコーディングでは、用語の意味を理解しているほど、AIの説明や生成コードを確認しやすくなる。
  • 迷ったときは、エラー内容、目的、前提条件を整理してAIに聞くとよい。

より詳しくAIに聞いてみよう

  • ソースコードとは何か、プログラミング未経験者でもわかるように説明してください。
  • コンパイル型・インタープリタ型・トランスパイル型の言語の違いを教えてください。
  • 良いソースコードとそうでないソースコードの違いを具体例で教えてください。
  • AIが生成したソースコードをレビューするときに確認すべきポイントを教えてください。
  • ソースコードをGitで管理するメリットと基本的な運用方法を教えてください。