トイレットペーパーでプログラミングの変数を理解する模型(🧻0Null…)【ねとらぼ】 [少考さん★]
■ このスレッドは過去ログ倉庫に格納されています
トイレットペーパーでプログラミングの変数を理解する模型が分かりやすい 「絶妙」「秀逸」と話題に
ただしガムテでお尻は拭けないものとする。
https://nlab.itmedia.co.jp/nl/articles/2201/10/news048.html
2022年01月10日 19時50分 公開
https://image.itmedia.co.jp/nl/articles/2201/10/l_ah00_null1.jpg
プログラマーが変数を理解するため、トイレットペーパーに例えてみた模型が「分かりやすい」「秀逸」と注目を集めています。
https://twitter.com/pcb/status/1478324098292133888
製作したのは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になるので、「(ガムテが入ったホルダーにトイレットペーパーを入れても)トイレットペーパーにガムテープがくっついて使えなくなるので数字にならない」とのこと(※ただしガムテでお尻は拭けないものとする)。
(略)
※省略していますので全文はソース元を参照して下さい。
https://twitter.com/5chan_nel (5ch newer account) >>1
嘗糞文化ならでは
やっぱジャップはスカトロジスト民族だわw 言語やDBによって取り扱いが異なるのでちゃんと確認するように 意味不明w
そんなんでわかった気になってんじゃねえやw オナニーはトイレットペーパーにした方がトイレに流せるので俺はトイレットペーパー専門だな トイレットペーパーの構造に前提が多すぎるだろw普通に箱とミカンでいい 分かってる人には当たり前
分からない人には白人の出身国を当てるくらい困難 このレベルの理解で模型まで必要なら
プログラミングは向いてない気がする… よくある「箱(変数)を用意(定義)してそこにもの(値)を入れる」で理解できない人がいるのか ツッコミだしたら色々言いたくなるけど
面白いからまあよし 定義域以外の値を入れたい
ロール10個分とかマイナスとか プログラミングがわかってる人にはこの模型がわかる
わかってない人にはわからない
学習用にはならなそう。ジョークとしておもしろい >>4
嘘を繰り返し喚いてもひっくり返しようのない事実が有るからクソ杭は韓国の数少ない文化ってことは替えられない
建国神話からして神様が大陸の端からケツ突き出してした大量のうんこが朝鮮半島になったっていう
食糞を美化するような昔話があったり日常に根付いてないとこの辺は残ってこないわな
異常行動を異常とも感じないからいたるところにうんこ関連の事例が隠れてる糞食い民族のくせに >>8
意味不明と言えばいいと思ってるだろ?
そうじゃなくて理解しようとしてないからだ
お前にはがっかりだ 空文字は文字列型のサイズのない状態か
あるいは、中身のない空っぽなやつ >>1
ポインタすら知らないハゲがプログラミングとか語ってんじゃねえよドアホ .Netしか分からないおっさんだけど、Newする場合としない場合の理解に1ヶ月かかったわ ポインタを知っていても理解できずに敗れ去ったJava屋が哀れ これを理解に一助としてちゃんと調べてくれれば良いが 1回30センチとか使っていい長さが決められてそうだな
あんまり使いたくない だがしかし、nullポインターが〜などと得体のしれない化け物のように扱うことだけは上手だったな >>23
芯のないトイレットペーパーが後1周しかない状態かなぁ 気合があればどうにかなるのに諦めてからが試合開始の場合もあるのに根性なしどもめらがっガッツを見せる ポインターのポインターを理解できなくて敗れ去ったCおじさんお元気してますか ごちゃごちゃうるせえくそ野郎って言いたいだけなんだろうな
追い詰められてるのだろうニチャァ >>39
そんな超絶バカはお前くらいなもんじゃね? そんな小手先のことより自分で簡易プロセッサーを設計した方が早いよ
ハードとソフト、まぁこの場合はRTLシミュレーションとアセンブラがどう動くか分かれば、高級言語の動きなんて自然の摂理の如く理解可能 論理回路を自分で実装してみれば確かにおのずと理解できるだろ
低みからのマウンティング行為 >>45
ポインタすら知らないいつもの知的障害ジジィのお前やお前w
なんか書いてみろやバカ > ID:UzkVJ5kI0の自己紹介をちょっと眺めてみよう
・ポインターのポインターが理解できない
・常にアドレス渡しのくそ野郎
・再起関数すら作れないゴミ ソフトウェアは仮想じゃなくて
実際に回路を使って実装されるもの。
といえばだいたい理解してくれるもんだ。 仮性包茎みたいなもんで一皮むければどうにかなるのに
ポインターだめだめおじさんは常に敗れ去るのだ >>48
ひどいバカ発見wwwww
ゴミはお前の頭だろwwwww IDコロコロしてて唐突に表れる
よく透明にしたと気が付いたなゴミ
なかなか慣れてるじゃないかハゲ 毎日フルボッコにされてアウアウ悔しがってる反吐が出るようなガイジ顔ジジィID:sMpWhngM0
今日もボコボコにされて泣きじゃくっててワロタ 日本もインドみたいに16×16まで暗記するとかしたらいいんじゃね
インド式数学もいいよね しかし理解してる側からするとなんでそこで詰まるんだ?ってのを眺めるのは楽しいたまらん >>1
トイレットペーパーの芯にチンコ入れてシコシコ 今日もいつもどおり自己紹介乙〜w
> 毎日フルボッコにされてアウアウ悔しがってる反吐が出るようなガイジ顔ジジィID:sMpWhngM0
> 今日もボコボコにされて泣きじゃくっててワロタ >>59
お前が馬鹿だと自己紹介してるだけだろwwwww 今時ポインターなんて使う場面ある?
for文でさえ見なくなったのに。 分かってる人が見てわかってるだけシリーズ定期アフィ よほど常日頃いじめられてるんだろうな
この無限ループっぷりはポインタおじさんじゃないわ
ポインタだめだめおじさん元気してるかな? ポインターってあれだよね
白黒の豹柄模様のわんわんお コアな実装してない上辺だけの末端PGだったらポインターなんて見る機会すらないでーすと自己紹介してるようなもの これで理解できるかどうかで適性がわかるかもね
ほかにも、たとえばインスタンスの概念についても言えるけど こういう具象物で理解できるってのは既に知ってる人だけ
データ型、オブジェクトを知らない人はこれで理解はできない いやこんな抽象的なクイズだされても理解してる人はわかるが、理解しようとしないマヌケにはナンノコトヤラサパーリだろ ゼロとnullの差がイマイチだよな
nullをうまく表現できてない >>68
マヌケなこと書いても概念を抑えてる人からは生暖かい目で見られるだけよ >ID:sMpWhngM0=ID:/8o+O5930
こいつウジャウジャ頭に虫湧いてそう 「0以外」
「0」
「」
「無理」
こんな感じなん?
プログラム言語知らんけど >>1
ぬるぽはトイレットペーパーをセットする棒がない状態だな。 >>75
お前の存在自体がバグってるからそう思い込むだけじゃねえのか
ハゲ >>62
お前がいい年こいて機械音痴な理由わ自覚しろ ハゲは常に空回りするからな
存在自体がもったいないという
そしてハゲ散らかしと 初めて代入文 y:=x を見て、この後 x は値が消えてなくなっちゃうと思い込む人は一定数居るんだよな >>67
いや、昔のCプログラマーなんて参考書いっぱいあったから
参入は簡単だった(書き方も作法があって作法通りやれば良い)。
今のWebは日本語の参考書が殆んどないし
バージョン違うと書き方も変わるのに
体系化されてない。
それこそギフハブ見て自分で考えろって方針。 >>70
的外れのアホなだけだと理解できないお前がマヌケ >>84
それは知ったか丸出しでしかないんだよな
前線でコード書いてたおっさんたちは、英語の世界で頑張ってたよ
それを噛み砕いたダメな参考書みてるからお前はいつまでたってもハゲなんだよハゲ
自覚しろよハゲ バカでもわかる対偶命題🤪😜😝
「お姉ちゃんってどうしてそんなにエッチなの??」
「エッチでなかったらお姉ちゃんじゃないからよ」 ValueObjectをトイレットペーパーで表現したら偉い。 >>86
おいこらハゲ
IDコロコロ忘れてるぞハゲ モジュール間のデータの受け渡しを最適化するための「型」なのに
大容量通信時代になったせいで、どれだけパケット飛ばしてるのかも意識せずに
変数の型を設計してる糞SEばかり
最悪なのはCHAR型にカンマ区切りで多数のデータぶち込んでドヤ顔する糞SE
IT後進国の極み ぶっちゃけ、そこでは躓かないからw
ポインタをトイレペで例える模型作れ >>91=ID:/8o+O5930
IDコロコロは白々しいお前一匹だろ 理系男でも本質的に脳筋ですっていうスレだな
マウント合戦で1000まで行くんだぜ とにかくやれば良いんだ。
頭で考えても始まらない。
コンパイル掛けてアセンブラをみて人間逆コンパイラになってCソースを作る。
これの繰り返しだよ ハゲ散らかしはほっとけばずーっと無限に実体のない相手に紙を返してと泣き叫ぶ
見苦しいことこの上もないw>>94 普通に海外のWebで繰り返しやったらいいやんw
俺それ実践してシステム簡単に作れるようになったし
なんか面倒くさいわw >>100=ID:/8o+O5930
見苦しいことこの上ないIDコロコロハゲは白々しいゴキブリのお前一匹だろ そういえば、駄目なやつは思い込みでハゲ散らかして結局なんで剥げたのが理解できてなかったわ >>104=ID:/8o+O5930=ID:qzupuoAE0=ID:MzTG5Fvi0
何ひとつ理解できないIDコロコロでハゲでゴキブリの底抜けのバカは白々しいゴキブリのお前一匹だろ リロードした時にちらっと見えるハゲがとってもセクシー >>84
まだ日本語なんかでやってるの?
俺は全て海外サイトだよ
動画も全てあちらで勿論字幕一切無し
簡単に聞き取れて理解してる
コーチは老若男女いて楽しいね
若いネーチャンがゲームのプログラミング解説してたりするし
インド人はちょっと癖があるかなってw
日本のコンテンツなんか相手にもしなくなったわ カバーを開けると「ペーパーは倉庫にあります」と書かれたメモが貼ってあるのがポインタ
というオチの方が面白いと思う トイレットペーパーで説明しなきゃわからないのが問題 >>111
この国の奴らって
トランプ大統領のスピーチすら聞き取れんやろ
コメントで何言ってるかわからない
ってのを沢山みるし
あんな庶民に向けて凄く簡単に演説してるのすらわからない
とか可哀想だなーって思ってるわ なんでnullにトイレットペーパーの芯が代入されてるの? ざっと見てみたけど、余計に分かりにくくしてるなぁと思いました。
簡単なことをわざと難しく書く、SEの悪い癖ですね。 >>117
芯じゃない
ホルダーだけ
トイペというオブジェクトがないのでnull 抽象化概念のない人ってどのくらいの比率でいるんだろう
若ければ訓練で獲得出来るよね? >>116
日本に原爆落とした世界最悪のならず者国家のクソガキより米語喋れるようになってから寝言ほざいとけ
だいたいプログラムなんて教えてもらうもんちゃうやろ
気づいたら人語喋れてるのと同様、健常者としてできて当たり前だと気づけ >>107
まーぶっちゃけ日本語の解説が出回るまで時間あるからね
ゲームエンジニアだけど、新し目のソフトやらワークフローが出たら現地のスレッドしかみないようになったな。
と言うかプログラムなんて殆どそうでしょ
直接拙い英語で開発者やそのスレッドで質問してるわ。 こんなん、インスタでずっと前からあるやつのパクリやん つか米語の連中も掲示板とかお前らの日本語みたいにまともな米語書いてないし
そういうの理解できるようになってから偉そうなこと言わないとな >>121
落として頂いたんでしょ?
あれがなければもっと被害が広がってたんだし
侵略に歯止めがかからなかった
大体さ、防戦一方、アメリカ大陸にすら上陸できなかったし情けないよ
真珠湾奇襲攻撃、カミカゼはテロだよテロ
大日本テロリズム帝国と呼んでるわ
俺はあの戦争を一切美化するのやめたね NANを見て、え?整数変数のモデルじゃなかったの?浮動小数だったの?感がすごい >>129
何やこいつ無知過ぎてやべーな
それともそういう教育しか受けてないガキか? >>132
負け犬国家のくせに吠えるなよ
未だに戦犯国として扱われてるんだし
3発、4発目の原爆落としてもらいたいね NuLLと0の違いだけでも理解させるのには苦労してるのに、非ITは>>1でも解んないと思うぞ
>>4
トンスルが恥の文化だと最近学んだので、ジャップに押し付けるのに必死 >>136
あんたねそんな大日本テロリズム帝国
のDNAを受け継いでるんだよ
あんたのご先祖様は大日本テロリズム帝国の
国民だったわけだしな
普通は頭ごなしな態度なんかできないし
控えめにしとくもんだよ nullは悪い発明
null条件演算子をjavaにつけて
c#やったあとにjavaのnull除け書かされると、なんかもうダサくて意味が分かんない、辛い >>138
国籍も言えない奴って生きてて恥ずかしくないのかな?
祖国に対して誇りすら持てないとか悲しすぎて惨めだね。 doubleとかintで理解しようとすると余分な概念が多すぎて逆に混乱する。
もうちょっとややこしいクラスなりオブジェクトで考えるとわかりやすい。 mql4が扱える場合に私はプログラマーですというの正解ですか? すげえわかりにくい説明だな
実務者による分かりやすい説明はよ >>129
なあそんな弱小日本に泣きついて助けてくださいとか併合してくださいとか泣きわめいててどんな気持ち? お前たちめんどくさいね
厳密さなんてどうでもいいんだよ この例えで言うなら
トイレットペーパーがある場所すら未確定なのがnullじゃないのか
タンクの上なのか
壁の金具なのか
床なのかは
決まってないからnullなわけで unknown
↓
unkown
これをトイレットペーパーに例えると。。 まったく分からんかったわ
高級言語でヌルポとか使わんし この例えでNULLを表現するなら
トイレットペーパーの代わりに5chおじさんのチンコの皮とか巻きつけておくとかしてないとダメ >>129
トイレットペーパーからなんでそんな話になる?
頭の中がnullな奴だな。 合ってるとは思うけどこれを鵜呑みにすると既存システムを見たときに混乱しかねない
世の中まともなエンジニアだけでできてるわけじゃないからな笑 定数
これって正解はどう読む
ていすう、じょうすう これ見て納得出来るプログラマーはプログラマーとしての適性は無い
全ての状態が同時に観測できるって思っちまってるだろ
たとえば、0とNullを見比べる事が出来るって思ってる
Nullだけ見て芯だけの状態なのか、芯そのものが無いのか、本来は分からないんだがな
その事さえ認識出来てない 変数があるってことは実態が確保されてるんだろがハゲいい加減にしろハゲ 酷いシステムは"null"って文字列を定義してるからなボケが #define null (void *)0
#define zero 0 てか日本語なんて使ってるからわからんのだよ
英語ならそのまんま書いてあるとおりだろ >>180
気がしてるならハゲと一切変わらんだろハゲ >>183
何もまとってないから光り輝くんだろハゲ
いや、俺かハゲか 0のとこに入ってるのは白い芯か?
0とnullの違いをはっきりさせたいなら、茶色い芯のトイレットペーパーにした方がいい思う >>190
だがなハゲ散らかしほど、ハゲという認識が甘いんだよな
お前にカミなどない!って教えてやるのもなんかね >>191
0とNULLがわかりにくくなってるのは0の軸が細く見えてNULLの軸が太いせいだね。
細めの軸にして、0で使い切った状態の芯が残ってる形がはっきりわかるようにして
NULLのほうでは細い軸だけが残ってるように見えるとわかりやすい。 物理メモリを意識しなくなってから分かりにくくなったのかね 心の無いトレペはそこまでマイナーじゃないよな?何の話してるかよくわからんけど >>196
でもそれ絵の順番がおかしいんだよね
工程がぐちゃぐちゃ 「例えば〜」と全く別の話をするキチガイはもう間に合ってます a=a+1
これ初めて見たとき、ん?0=1?と思ったものだ >>16
0とNullとNaNをどうやって表現する? >>15
これ
プログラミングというより算数の □ を使った方程式で学ぶ範囲がほとんど >>48
再帰関数だよね?
再起関数でググっちゃったよ。 >>55
CだとNULLは0だからな
変数のアドレスが0とは限らない 超絶アホが作ってもいいように何がnullでもなんとなく動くようにフレームワーク作っておいたら、アホが作るソースだらけになった事がある。 >>211
nullって、それを使おうとしたら止まるようにするための仕組みだし >>143
マシン語を先に覚えていたから
Cは int* というポインタ型変数だと思えば理解できた
C++で参照型を int& 型として覚えたから
他の言語の参照型も理解できた >>218
同意
NaNは変数の割り当ては完了していて値が非数なだけだから
この2つに違和感がある Non Zero Value フサフサ
Zero 剃ってる
Null ハゲ、生えない、生える見込みもない
Undefined 誰も気にしてない
NaN カツラ、植毛、塗り絵など 結局のところコンパイルしたらマシン語としてどうなるかってのを理解するのが一番合理的なんだよな Non Zero : ふさふさ
0 : ハゲ
ポインタ : ヅラ
Null : ヅラが飛んだ
Undefined : ヅラが行方不明
NaN : 代わりにマジックで描いた null 発音記号は nˈʌl
✕ヌル
○ナル
(nˈʌl)←右手ネコパンチを出してるニャンコに見えないこともない 人に分かり易く説明できて初めて「理解している」と言えるのだよ
オマエラの殆どは「理解してるつもり」レベルだ こういう風に覚えてしまうと、数学上の計算を考えるときに問題あるようなきがするなあ。
NaNはゼロ除算したときにも出てくるがある数値を式に代入すれば0/0になりNaNになる場合でも
ロピタルの定理使えれば数値になるわけで、無限小が数字じゃないってのは違和感がある。
0や0.0についても同様。数学考えないプログラマの偏見が入りまくってる気がする。 >>10
タオルにするのが上策とする
よく洗濯した使い古しのタオルにするんだよ。
肌触りもお手頃、使用後は洗濯して再利用可のエコ仕様。
また使用中にはローションまみれの手も拭ける優れもの?。ww C言語だと#define NULL ((void *)0)と定義されてるもんね
他の言語だと例えばjava だとNULはNULLだという扱いよね >>222
undefinedはその場合「ハゲに気づいてない」じゃないか? Non Zero Value:好きという感情を持ち合わせてる
0:嫌いではない
Null(無):知ってる
Undefined(未定義):存在を知らない
NaN(Not a Number:数字ではない):生理的に無理
こんな感じ? 俺はVBAで変数を定義しない男
大文字Iと小文字lと数字1を間違えた?
そんなのは甘えだよ。
数十万の配列も全てvariant一本で十分だ。 変数とか理解するなら
こんな工作よりアセンブラを経験したほうが65535万倍役に立つわww 変数なんかメモリと言う土地の使い方に過ぎないのだから電話帳でも使っとけ Non Zero:投票した
0:投票しなかった
Null:投票権がない
Undefined:投票日前
NaN:白票を入れた >>229
そうだな。少し違うか。
修正してみた。
Non Zero : ふさふさ
デクリメント : 抜けた
デクリメント : 抜けた
0 : ハゲ
if文 : 「ハゲは入場禁止」
ポインタ : ヅラを購入した、これで入れる
Null : ヅラが飛んでいった
Undefined : トイレに隠れた、捜索されている
NaN : 代わりにマジックで描いた
エラー : クビになった >>233
メモリにアドレスを格納するということを多用するからみんな苦手なポインタが楽勝になるね >>230
いい味出してる
少なくとも1よりは良い感じ >>223
英語ではな
元々のラテン語はヌルス(nullus)
ドイツ語のゼロはヌル(null) これ変数の話じゃなくて値の定義じゃん
変数というからミュータブル/イミュータブルとか参照の概念とかを想像したわ >>117
それ思った
芯代入だよねこれ
棒も無い状態の方が直感的に解り易い
今どきのホルダーは両脇の支えしかないからな 楽譜ってプログラミングの法則そのものだと思った。一定のスピードでコマンドをこなし、
ある部分を繰り返したり、1回目と2回目で違う処理をしたり・・・・
ミュージシャンとプログラマー兼務している層が多い理由がわかる。 ■ このスレッドは過去ログ倉庫に格納されています