ハードコーディング
ハードコーディング(英語: hard coding)とは、本来プログラム中に記述すべきでないリソース(エラーメッセージなど)を、直接ソースコード中に埋め込むことである。これらは本来、外部ソースから取得するか、実行時に生成するべきものであり、これをソフトコーディング(英語: soft coding)という。
ハードコーディングされたデータを変更するには、ソースコードを編集して実行可能ファイルを再コンパイルするか、バイナリエディタを用いてメモリ上またはディスク上のプログラムを書き換える必要がある。
ハードコーディングされたデータは、物理定数、バージョン番号、静的テキスト要素などの不変な情報を表す。一方、ソフトコーディングされたデータは、ユーザ入力、HTTPサーバーからの応答、構成ファイルの内容などの任意の情報であり、実行時に決定される。
具体例としては、固定された付加価値税が設定された電卓や地球の重力加速度が設定された体重計がある。それらは付加価値税率が異なる共同体や地球以外の重力の場所では正常な値が取得できない。