プログラミングの勉強【基礎知識】nullとかnilってなに?

プログラミングの勉強【基礎知識】nullとかnilってなに?
Advertisement

プログラミングの勉強を始めてから、「null」もしくは「nil」という言葉を目にしたことがありませんか?

初めのうちはあまり意識することなくプログラムを作れてしまうかもしれません。

しかし、概念としては理解しておくべきものですので今回は解説していきたいと思います。

null(nil)とは簡単に言うと、「何もない」ということを表しています。

じゃあ「0」のことかと言うと、そうではありません。

プログラミングを学ぶ上でこの新たな概念を頭に植え付けてください。

「0」は「0」があるという考え方をし、「何もない」とは別物なのです。

現実世界で例えると、箱の中にリンゴが1つ入っていた場合、箱の中身を問われると「リンゴが1つある」ですよね。

では箱の中にリンゴが入っていない場合はどうでしょう。

このときは「リンゴが0個ある」となります。

初めのうちはこの概念に違和感を覚えてしまうかもしれませんね・・・。

ここからは少しだけ深掘りします。

この「0」と「null」の違いを認識しておかないと、プログラム中の計算式にバグが発生してしまう場合があります。

例えば、nullの入っている変数を計算式に入れていて、この変数には何も入れていないから計算上で0として扱おうとすると、意図したものとは異なる計算結果が現れることがあります。

静的な変数であれば宣言した段階で初期値を0として勝手に初期化してくれますが、動的な変数であれば初期値が不定値になってしまうことがあるんです。

不定値とは、どのような値かわからない値のことです。この値はコロコロ変わるので注意してください。

数字を扱う変数であれば、初めは必ず0かもしくは意図した値で初期化しておいた方がいいでしょう。

プログラムというのは人間にとって都合よく、バグが発生しづらくなるような補完機能があります。

ですが、それに任せっきりで具体的にコンピュータの中でどういった動きをしているのかを理解しておかないと、思わぬバグが発生した際に修正するのに時間をとられてしまいます。

動けばオッケーという考えの下でプログラミングをするのも初めはいいかもしれません。

最初から色々詰め込みすぎると途中で心が折れちゃいますからね。

しかし、プログラム上の動作というのは全て繋がっていて、必ず根拠があります。

少しずつでもいいので、そういったプログラムの1歩深いところを意識しながらプログラミングの学習をしてみると良いと思います。