advertisement
プログラマーが変数を理解するため、トイレットペーパーに例えてみた模型が「分かりやすい」「秀逸」と注目を集めています。
製作したのはTwitterユーザーのぱんかれ(@pcb)さん。木箱の中に、小さなトイレットペーパーホルダーが入っており、それぞれ「Non Zero Value(トイレットペーパーがついてる)」「0(芯だけついてる)」「Null(何もついてない)」「Undefined(ホルダーすらない)」「NaN(ホルダーにガムテープがついてる)」とラベルがついています。
ぱんかれさんの説明によると、トイレットペーパーを数値(signed integer)だとすると、
- Non Zero Value:0ではない長さのトイレットペーパー(残量≒数値)
- 0:長さ0のトイレットペーパー(残量がちょうど0:棒には芯だけになってる)
- Null(無):トイレットペーパー自体がセットされてない(ので芯すらない)
- Undefined(未定義):トイレットペーパーが入るための器(データ型)がない(未定義なので、そこにトイレットペーパーを入れる先がない)
- NaN(Not a Number:数字ではない):トイレットペーパー(≒数値)ではない
なおNaNは1+NaNのように数字を足しても全てNaNになるので、「(ガムテが入ったホルダーにトイレットペーパーを入れても)トイレットペーパーにガムテープがくっついて使えなくなるので数字にならない」とのこと(※ただしガムテでお尻は拭けないものとする)。
この模型には、分かりやすい例えを「絶妙」「天才」と称賛する声や、ミニチュアが「かわいい」という声、「オーバーフロー(収まらないぐらいに太く長いトイレットペーパー)も欲しい」「ガムテープが紙やすりに見えた」といったコメントが寄せられています。
ぱんかれさんは模型をトイレに飾っているとのこと。模型が話題になったことについては、「ずっとみんなに伝えたかった『NaNはトイレットペーパーホルダーにセットしたガムテープみたいなモノである』を爆速で布教できているので、もう成仏できそうなくらいな充足感ある」とツイートしています。
Copyright © ITmedia, Inc. All Rights Reserved.