「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典イメージぴよ画像「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典

ランタイムエラー

pointこの用語のポイント

pointプログラムの実行時に発生したエラーだよ

pointプログラムが仕事を途中放棄するよ

point原因は様々だよ

スポンサーリンク

簡単に書くよ

ランタイムエラー(英:runtime error)とは

「実行時エラー」のこと。
用語の中身としては

プログラムの実行時(プログラムを動かしているとき)に発生するエラー
であり

プログラムさんが、お仕事を途中放棄するエラー
です。


image piyo

詳しく書くよ

順番に見ていきましょう。

プログラムというのは一般的に、まず、人間語で元ネタソースコードを作ります。
人間語で書かれたプログラムの元ネタファイルは「ソースファイル」です。

ランタイムエラー

次に「コンパイル」という作業を通して、コンピュータが分かる形に変換します。

ランタイムエラー2

これでコンピュータさんはプログラムの内容を理解できるようになりました。
あとは実際に動かすだけです。

ランタイムエラー3

これがプログラムができるまでの流れです。

以上を踏まえて

プログラムの実行時(動かしているとき)に発生するエラー

が「ランタイムエラー」です。
実行時エラー」とも呼ばれます。

ランタイムエラー4

なお、ここで登場した「ランタイム」の意味は「プログラムとかを動かすとき(実行時)」です。
「run time(走る 時間)」で「runtime(ランタイム)」と解釈すると、覚えやすいと思います。

ランタイムエラー5

あと、ついでなので書いておくと、コンパイル時に発生するエラーは「コンパイルエラー構文エラーシンタックスエラー」と言います。
気が向いたら、覚えてあげてください。

ランタイムエラー6

話をランタイムエラーに戻します。

ランタイムエラーが発生する原因は様々です。
プログラムの内容がおかしい場合もあれば、必要なファイルを人間様が消してしまった場合も、あるでしょう。
その他にも、いろいろな原因が考えられます。

注意点として、ランタイムエラーは、プログラムさんが「ヤバい!なんかおかしい!俺、もう力尽きるわ!」と自己申告してきたエラーです。
プログラムさん内部で解決できちゃうエラーは「ランタイムエラー」とは呼びません。

例えば、プログラムさんのお腹が痛くなったとしましょう。
調子に乗って、おやつのアイスを食べすぎたようです。

ランタイムエラー7

でも、大丈夫です。

このようなトラブルも想定して、正露○を用意してありました。

ランタイムエラー8

正露○を飲んだら腹痛も治まったようです。
気を取り直して、お仕事を続けました。

ランタイムエラー9

このような状態は「ランタイムエラー」とは言いません。
確かに異常は発生しましたが、それに備えてあって、お仕事を続けられたからです。

もう少し、実際のプログラムに近い例も挙げておきます。

例えば、設定ファイルを読み込んで動く2つのプログラム「ピヨ太プログラム」と「ピヨ子プログラム」が あったとしましょう。

ランタイムエラー10

ある日のことです。
ピヨ太ママが間違って、設定ファイルを捨ててしまいました。

ランタイムエラー11

さぁ、大変です。

お仕事を始めようとしたピヨ太プログラムですが、設定ファイルを見つけられません。
ピヨ太プログラムは「なんだよ~。これじゃ、仕事ができないじゃん。もう今日は休みだ!休み!」とふて寝してしまいました。

ランタイムエラー12

おそらく、ピヨ太プログラムの中身は、以下のようになっていたのでしょう。

1.設定ファイルを読み込む

2.設定ファイルが無ければエラー。ふて寝する

3.設定ファイルがあれば、あれやこれやの処理をする


この状況は

ピヨ太プログラムを動かしたらランタイムエラーが発生した

と言えます。
プログラムを動かしたときにエラーが発生して、処理を途中で止めちゃったからです。

一方、ピヨ子プログラムは、どうでしょう?

お仕事を始めようとしたピヨ子プログラムですが、設定ファイルを見つけられません。
ここまではピヨ太プログラムと一緒ですね。

ピヨ子プログラムは、ここからが違います。
「まぁ、いいわ。こんなときのためにメモっておいた設定があるから、それを使って、お仕事を進めましょう」と、お仕事を続行しました。
さすがはピヨ子プログラムです。
どこかのピヨ太プログラムとは違いますね。

ランタイムエラー13

おそらく、ピヨ子プログラムの中身は、以下のようになっていたのでしょう。

1.設定ファイルを読み込む

2.設定ファイルが無ければエラー。事前にメモっていた値を使って処理を進める

3.あれやこれやの処理をする


ピヨ子プログラムの中でもエラーは発生しています。
ですが、ピヨ子プログラムは根性で処理を続行しました。

このような状況は「ランタイムエラー」とは言いません。
「ランタイムエラー」という用語は

処理が途中で止まった(プログラムが仕事を放棄した)

エラーを指す用語です。


image piyo2

一言でまとめるよ

まぁ「ランタイムエラー」って単語が出てきたら「プログラムを動かしているときに発生したエラーなんだな~」と お考えください。

一番上に戻るよ
スポンサーリンク
書籍画像073
書籍画像057

おまけ

■訳してみるよ

「run(ラン)」の意味は「走る」とかです。
「time(タイム)」の意味は「時間」とかです。
「error(エラー)」の意味は「誤り」とか「間違い」とか「過失」とかです。
何となく くっつけると

走る時の誤り

となります。


■検索してみる?




書籍画像
わわわ説明術コラム
宣伝だよ
つくって、壊して、直して学ぶ Kubernetes入門
「分かった!」と思わせる説明の技術 知識ゼロの相手にも伝わるようになる本【Audible】
ウォーターサーバーのキャッチコピーを100本考える方法